按日期打印Python的Tornado框架中的日志的方法
網(wǎng)站流量上來(lái)后,日志按天甚至小時(shí)存儲(chǔ)更方便查看和管理,而Python的logging模塊也提供了TimedRotatingFileHandler來(lái)支持以不同的時(shí)間維度歸檔日志。
然而根據(jù)Logging HOWTO的官方指南設(shè)置后,卻發(fā)現(xiàn)新的日志只剩下root的,Tornado內(nèi)部的logger全部沒有生效。
參考stackoverflow上的一個(gè)回答,我發(fā)現(xiàn)下面的配置能讓Tornado內(nèi)部的logger也用上TimedRotatingFileHandler:
# logging.yaml version: 1 disable_existing_loggers: false formatters: simple: format: '%(asctime)s - %(name)s - %(levelname)s - %(message)s' loggers: all: handlers: [all] propagate: false tornado: handlers: [all] propagate: false handlers: console: class: logging.StreamHandler level: INFO formatter: simple stream: ext://sys.stdout all: class: logging.handlers.TimedRotatingFileHandler level: INFO formatter: simple when: midnight filename: ./logs/server.log root: level: INFO handlers: [console, all] propagate: true
只需在Tornado的入口代碼處調(diào)用:
logging.config.dictConfig(yaml.load(open('logging.yaml', 'r')))
- 如果你想按別的時(shí)間維度分割日志,修改when參數(shù)對(duì)應(yīng)的值就可以了。
- 特別注意:當(dāng)when的值是D,表示由服務(wù)器啟動(dòng)的時(shí)間計(jì)起,每過(guò)24小時(shí)歸檔一次;而如果你和我一樣,希望在每天的凌晨歸檔日志的話,可以配置為midnight。
- Centos系統(tǒng)可能需要先安裝python-yaml:sudo yum install python-yaml
相關(guān)文章
基于Python實(shí)現(xiàn)多語(yǔ)言朗讀與單詞選擇測(cè)驗(yàn)
在數(shù)字化教育日益普及的今天,開發(fā)一款能夠支持多語(yǔ)言朗讀和單詞選擇測(cè)驗(yàn)的程序,對(duì)于語(yǔ)言學(xué)習(xí)者來(lái)說(shuō)無(wú)疑是一個(gè)巨大的福音,下面我們就來(lái)用Python實(shí)現(xiàn)一個(gè)這樣的小程序吧2025-03-03
Windows 下更改 jupyterlab 默認(rèn)啟動(dòng)位置的教程詳解
這篇文章主要介紹了Windows 下更改 jupyterlab 默認(rèn)啟動(dòng)位置,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05
基于Python創(chuàng)建可定制的HTTP服務(wù)器
這篇文章主要為大家演示一下如何使用?http.server?模塊來(lái)實(shí)現(xiàn)一個(gè)能夠發(fā)布網(wǎng)頁(yè)的應(yīng)用服務(wù)器,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2023-05-05
pytorch 批次遍歷數(shù)據(jù)集打印數(shù)據(jù)的例子
今天小編就為大家分享一篇pytorch 批次遍歷數(shù)據(jù)集打印數(shù)據(jù)的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12
利用PyQt中的QThread類實(shí)現(xiàn)多線程
本文主要給大家分享的是python實(shí)現(xiàn)多線程及線程間通信的簡(jiǎn)單方法,非常的實(shí)用,有需要的小伙伴可以參考下2020-02-02
python實(shí)現(xiàn)通訊錄系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)通訊錄系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05
Python實(shí)現(xiàn)RLE格式與PNG格式互轉(zhuǎn)
在機(jī)器視覺領(lǐng)域的深度學(xué)習(xí)中,很多數(shù)據(jù)集的標(biāo)注文件使用RLE的格式。但是神經(jīng)網(wǎng)絡(luò)的輸入一定是一張圖片,為此必須把RLE格式的文件轉(zhuǎn)變?yōu)閳D像格式。本文將利用Python實(shí)現(xiàn)RLE格式與PNG格式互轉(zhuǎn),感興趣的可以了解一下2022-08-08

