最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Django 日志配置按日期滾動的方法

 更新時間:2019年01月31日 09:32:51   作者:BlackMatrix  
今天小編就為大家分享一篇Django 日志配置按日期滾動的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

記錄下Django關(guān)于日期的配置,以及如何根據(jù)日期滾動切割日志的問題。

配置的源碼在githun上 https://github.com/blackmatrix7/django-examples/tree/master/django_logs

準備

環(huán)境

python 3.5.2

djang 2.0.5

創(chuàng)建項目

使用命令快速新建django項目,示例的項目名為proj。

開始

修改配置文件

日志部分配置,參考Django官方手冊

https://docs.djangoproject.com/en/2.0/topics/logging/#examples

LOGGING屬性實際上是一個dictConfig

關(guān)于dictConfig的配置,參考Python官方手冊

https://docs.python.org/3/library/logging.config.html#logging-config-dictschema

LOGGING = {
 'version': 1,
 'disable_existing_loggers': False,
 'formatters': {
  'verbose': {
   'format': '[%(asctime)s] [%(levelname)s] %(message)s'
  },
 },
 'handlers': {
  # 輸出日志的控制臺
  'console': {
   'level': 'INFO',
   'class': 'logging.StreamHandler',
   'formatter': 'verbose'
  },
  # 輸出日志到文件,按日期滾動
  'file': {
   'level': 'DEBUG',
   'class': 'logging.handlers.TimedRotatingFileHandler',
   # TimedRotatingFileHandler的參數(shù)
   # 參照https://docs.python.org/3/library/logging.handlers.html#timedrotatingfilehandler
   # 目前設(shè)定每天一個日志文件
   'filename': 'logs/manage.log',
   'when': 'midnight',
   'interval': 1,
   'backupCount': 100,
   'formatter': 'verbose'
  },
  # 發(fā)送郵件,目前騰訊云、阿里云的服務(wù)器對外發(fā)送郵件都有限制,暫時不使用
  'email': {
   'level': 'ERROR',
   'class': 'django.utils.log.AdminEmailHandler',
   'include_html': True,
  }
 },
 'loggers': {
  # 不同的logger
  'django': {
   'handlers': ['console', 'file'],
   'level': 'INFO',
   'propagate': True,
  },
 },
}

創(chuàng)建logs目錄

cd django_logs/
mkdir logs

新增django_logs/logger.py

import logging
logger = logging.getLogger('django')

驗證

創(chuàng)建app

python manage.py startapp app

編寫視圖函數(shù)

編寫一個視圖函數(shù),使用logger用于往日志文件寫入日志

django_logs/app/views.py

from logger import logger
from django.shortcuts import HttpResponse

def test_logger(request):
 logger.info('test log')
 return HttpResponse('test log')

配置Url

django_logs/proj/urls.py

from app import views
from django.contrib import admin
from django.urls import path

urlpatterns = [
 path('admin/', admin.site.urls),
 path('test_log/', views.test_logger),
]

調(diào)用

訪問 http://127.0.0.1:8000/test_log/ ,在logs/manage.log中成功寫入

[2018-05-18 08:35:44,317] [INFO] test log
[2018-05-18 08:35:44,318] [INFO] "GET /test_log/ HTTP/1.1" 200 8

最后,修改系統(tǒng)日期,可以看到日志文件會按天進行分割。

日志寫入僅僅對于創(chuàng)建的logger對象有效,如果需要使用logging直接寫入,則需要再做一些修改:讓logging模塊使用django的dictConfig。

import logging.config
from django.conf import settings

logger = logging.getLogger('django')
logging.config.dictConfig(settings.LOGGING)

以上這篇Django 日志配置按日期滾動的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python列出目錄下指定文件與子目錄的方法

    python列出目錄下指定文件與子目錄的方法

    這篇文章主要介紹了python列出目錄下指定文件與子目錄的方法,涉及Python使用os模塊與glob操作目錄與文件的技巧,需要的朋友可以參考下
    2015-07-07
  • Python開發(fā)桌面小程序功能

    Python開發(fā)桌面小程序功能

    這篇文章主要介紹了Python開發(fā)一個桌面小程序功能,開發(fā)環(huán)境界面設(shè)置,功能介紹結(jié)合示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • Python合并多個裝飾器小技巧

    Python合并多個裝飾器小技巧

    這篇文章主要介紹了Python合并多個裝飾器小技巧,本文用改寫調(diào)用函數(shù)的方式實現(xiàn)把多個裝飾器合并成一行、一個函數(shù)來調(diào)用,需要的朋友可以參考下
    2015-04-04
  • Python實現(xiàn)的網(wǎng)頁截圖功能【PyQt4與selenium組件】

    Python實現(xiàn)的網(wǎng)頁截圖功能【PyQt4與selenium組件】

    這篇文章主要介紹了Python實現(xiàn)的網(wǎng)頁截圖功能,結(jié)合實例形式分別描述了使用PyQt4組件與selenium組件進行網(wǎng)頁截圖操作的相關(guān)實現(xiàn)技巧與注意事項,需要的朋友可以參考下
    2018-07-07
  • 淺談python中set使用

    淺談python中set使用

    下面小編就為大家?guī)硪黄獪\談python中set使用。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • PowerBI和Python關(guān)于數(shù)據(jù)分析的對比

    PowerBI和Python關(guān)于數(shù)據(jù)分析的對比

    這篇文章主要介紹了PowerBI和Python關(guān)于數(shù)據(jù)分析的對比,很多經(jīng)常會用到數(shù)據(jù)分析的伙伴會問有沒有一款便捷好用的工具!肯定有啊,Python的出現(xiàn)和普及,很容易就能改變這些窘境,需要的朋友可以參考下
    2019-07-07
  • 使用Python、TensorFlow和Keras來進行垃圾分類的操作方法

    使用Python、TensorFlow和Keras來進行垃圾分類的操作方法

    這篇文章主要介紹了如何使用Python、TensorFlow和Keras來進行垃圾分類,這個模型在測試集上可以達到約80%的準確率,可以作為一個基礎(chǔ)模型進行后續(xù)的優(yōu)化,需要的朋友可以參考下
    2023-05-05
  • Python Tkinter Menu控件使用詳解

    Python Tkinter Menu控件使用詳解

    Menu控件(菜單控件)可以說是 GUI 中“精髓所在”,它以可視化的方式將一系列的命令進行分組,在每一個分組下又可以“隱藏”許多的程序執(zhí)行命令(即功能)。本文將詳細介紹它的使用,需要的可以參考一下
    2022-01-01
  • Python中的Unittest基本使用

    Python中的Unittest基本使用

    這篇文章主要介紹了Python中的Unittest基本使用,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-08-08
  • 上帝為你開了一扇窗之Tkinter常用函數(shù)詳解

    上帝為你開了一扇窗之Tkinter常用函數(shù)詳解

    構(gòu)思了很長一段時間,總感覺不夠有趣,于是打算出一個完整的系列,讓大家一起感受python的樂趣.這個系列著重以系統(tǒng)庫中的tkinter為中心來圍繞進行編寫.因此我們的第一步是導入模塊, 第一節(jié)就來為大家建立一個窗口 ,需要的朋友可以參考下
    2021-06-06

最新評論

来凤县| 和硕县| 阿拉善右旗| 广宁县| 通许县| 贺兰县| 冕宁县| 凤冈县| 遂宁市| 九江县| 家居| 双鸭山市| 濉溪县| 富平县| 申扎县| 治县。| 新巴尔虎右旗| 固镇县| 兴山县| 阿拉善右旗| 霍城县| 梧州市| 临朐县| 玉龙| 青冈县| 饶平县| 长子县| 双流县| 花莲县| 九江市| 时尚| 临泉县| 宝山区| 鸡西市| 马鞍山市| 阳春市| 夏津县| 郧西县| 巧家县| 南丹县| 寻乌县|