摘要:网站流量上来后,日志按天甚至小时存储更方便查看和管理,而的模块也提供了来支持以不同的时间维度归档日志。然而根据的官方指南设置后,却发现新的日志只剩下的,内部的全部没有生效。
网站流量上来后,日志按天甚至小时存储更方便查看和管理,而Python的logging模块也提供了TimedRotatingFileHandler来支持以不同的时间维度归档日志。
然而根据Logging HOWTO的官方指南设置后,却发现新的日志只剩下root的,Tornado内部的logger全部没有生效。
参考stackoverflow上的一个回答,我发现下面的配置能让Tornado内部的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的入口代码处调用:
pythonlogging.config.dictConfig(yaml.load(open("logging.yaml", "r")))
如果你想按别的时间维度分割日志,修改when参数对应的值就可以了。
特别注意:当when的值是D,表示由服务器启动的时间计起,每过24小时归档一次;而如果你和我一样,希望在每天的凌晨归档日志的话,可以配置为midnight。
Centos系统可能需要先安装python-yaml:sudo yum install python-yaml
来自:建造者说
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/45360.html
摘要:译者说于年月日发布,该版本正式支持的关键字,并且用旧版本编译同样可以使用这两个关键字,这无疑是一种进步。其次,这是最后一个支持和的版本了,在后续的版本了会移除对它们的兼容。 译者说 Tornado 4.3于2015年11月6日发布,该版本正式支持Python3.5的async/await关键字,并且用旧版本CPython编译Tornado同样可以使用这两个关键字,这无疑是一种进步。其次...
摘要:夏天太热,又不想出门,就让我们用的来搭建属于自己的可以对话的老婆吧本文拟使用的开发语言实现类似于的平台的小娜,或者是下的的。 夏天太热,又不想出门,就让我们用的Python来搭建属于自己的〜可以对话的AI老婆吧〜 本文拟使用Python的开发语言实现类似于的WIndows平台的小娜,或者是IOS下的Siri的。最终达到人机对话的效果。 showImg(https://segment...
阅读 3576·2019-08-30 15:55
阅读 1374·2019-08-29 16:20
阅读 3657·2019-08-29 12:42
阅读 2664·2019-08-26 10:35
阅读 1012·2019-08-26 10:23
阅读 3407·2019-08-23 18:32
阅读 898·2019-08-23 18:32
阅读 2893·2019-08-23 14:55