Django 使用logging打印日志的實(shí)例
Django使用python自帶的logging 作為日志打印工具。簡(jiǎn)單介紹下logging。
logging 是線程安全的,其主要由4部分組成:
Logger
用戶使用的直接接口,將日志傳遞給Handler
Handler
控制日志輸出到哪里,console,file…
一個(gè)logger可以有多個(gè)Handler
Filter
控制哪些日志可以從logger流向Handler
Formatter
控制日志的格式
用戶使用logging.getLogger([name])獲取logger實(shí)例。
如果沒有名字,返回logger層級(jí)中的根logger(root logger)。以相同名字調(diào)用該函數(shù)總是返回同一個(gè)logger實(shí)例。這意味著logger實(shí)例不需要在應(yīng)用的各個(gè)部分之間傳來傳去。
Django通過在settings文件中使用LOGGING來定制日志輸出(包括定義logger, handler, formatter等)
例如,settings文件中定義如下:
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': 'INFO',
'class': 'logging.FileHandler',
'filename': 'D:/monitor.log',
'formatter': 'verbose'
},
'email': {
'level': 'ERROR',
'class': 'django.utils.log.AdminEmailHandler',
'include_html' : True,
}
},
'loggers': {
'django': {
'handlers': ['console', 'file', 'email'],
'level': 'INFO',
'propagate': True,
},
},
}
代碼中打印日志:
logger = logging.getLogger(‘django') logger.info(“This is an error msg”)
[2017-07-15 17:44:51,316] [ERROR] This is an error msg
這樣,日志就被打印到終端和文件。
關(guān)于django logging 想了解更多,可參考官網(wǎng)
https://docs.djangoproject.com/en/1.11/topics/logging/
以上這篇Django 使用logging打印日志的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python實(shí)現(xiàn)IOU計(jì)算案例
這篇文章主要介紹了python實(shí)現(xiàn)IOU計(jì)算案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-04-04
pandas如何獲取某個(gè)數(shù)據(jù)的行號(hào)
這篇文章主要介紹了pandas如何獲取某個(gè)數(shù)據(jù)的行號(hào)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02
修改 CentOS 6.x 上默認(rèn)Python的方法
這篇文章主要介紹了修改 CentOS 6.x 上默認(rèn)Python的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09
Python SqlAlchemy動(dòng)態(tài)添加數(shù)據(jù)表字段實(shí)例解析
這篇文章主要介紹了Python SqlAlchemy動(dòng)態(tài)添加數(shù)據(jù)表字段實(shí)例解析,分享了相關(guān)代碼示例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-02-02
Python2.x利用commands模塊執(zhí)行Linux shell命令
這篇文章主要介紹了Python2.x利用commands模塊執(zhí)行Linux shell命令 的相關(guān)資料,需要的朋友可以參考下2016-03-03
Python3列表List入門知識(shí)附實(shí)例
序列是Python中最基本的數(shù)據(jù)結(jié)構(gòu)。序列中的每個(gè)元素都分配一個(gè)數(shù)字 - 它的位置,或索引,第一個(gè)索引是0,第二個(gè)索引是1,依此類推2020-02-02
pytorch 實(shí)現(xiàn)L2和L1正則化regularization的操作
這篇文章主要介紹了pytorch 實(shí)現(xiàn)L2和L1正則化regularization的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03
Python通過調(diào)用mysql存儲(chǔ)過程實(shí)現(xiàn)更新數(shù)據(jù)功能示例
這篇文章主要介紹了Python通過調(diào)用mysql存儲(chǔ)過程實(shí)現(xiàn)更新數(shù)據(jù)功能,結(jié)合實(shí)例形式分析了Python調(diào)用mysql存儲(chǔ)過程實(shí)現(xiàn)更新數(shù)據(jù)的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下2018-04-04

