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

Django 日志配置按日期滾動(dòng)的方法

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

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

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

準(zhǔn)備

環(huán)境

python 3.5.2

djang 2.0.5

創(chuàng)建項(xiàng)目

使用命令快速新建django項(xiàng)目,示例的項(xiàng)目名為proj。

開始

修改配置文件

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

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

LOGGING屬性實(shí)際上是一個(gè)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': {
  # 輸出日志的控制臺(tái)
  'console': {
   'level': 'INFO',
   'class': 'logging.StreamHandler',
   'formatter': 'verbose'
  },
  # 輸出日志到文件,按日期滾動(dòng)
  'file': {
   'level': 'DEBUG',
   'class': 'logging.handlers.TimedRotatingFileHandler',
   # TimedRotatingFileHandler的參數(shù)
   # 參照https://docs.python.org/3/library/logging.handlers.html#timedrotatingfilehandler
   # 目前設(shè)定每天一個(gè)日志文件
   'filename': 'logs/manage.log',
   'when': 'midnight',
   'interval': 1,
   'backupCount': 100,
   'formatter': 'verbose'
  },
  # 發(fā)送郵件,目前騰訊云、阿里云的服務(wù)器對(duì)外發(fā)送郵件都有限制,暫時(shí)不使用
  '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')

驗(yàn)證

創(chuàng)建app

python manage.py startapp app

編寫視圖函數(shù)

編寫一個(gè)視圖函數(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)日期,可以看到日志文件會(huì)按天進(jìn)行分割。

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

import logging.config
from django.conf import settings

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

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

相關(guān)文章

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

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

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

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

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

    Python合并多個(gè)裝飾器小技巧

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

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

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

    淺談python中set使用

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

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

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

    使用Python、TensorFlow和Keras來進(jìn)行垃圾分類的操作方法

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

    Python Tkinter Menu控件使用詳解

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

    Python中的Unittest基本使用

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

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

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

最新評(píng)論

渝中区| 宁海县| 木兰县| 正宁县| 当雄县| 乌鲁木齐县| 秀山| 丰台区| 宁乡县| 布尔津县| 乌恰县| 淮阳县| 溆浦县| 汝城县| 大连市| 施甸县| 英德市| 贡山| 施秉县| 开阳县| 濮阳县| 陇西县| 法库县| 治县。| 广灵县| 黄冈市| 拜城县| 新绛县| 新野县| 舞阳县| 雷州市| 亚东县| 玛曲县| 谢通门县| 小金县| 商南县| 金塔县| 金平| 玉溪市| 淮滨县| 突泉县|