python生成时间分割的日志

日常写应用写日志是再常见不过的事情,用python的时候发现python自带一个日志模块还挺好用的,不仅支持常见的日志分隔方案,还支持输出到各种位置(比如文件、SMTP、内存)。

网上有大量的logging模块使用教程(可以见后面的参考),这里仅说说按照时间分割的方案。

logging模块按照时间分隔可以使用TimedRotatingFileHandler,logging模块提供三个基本的handler:StreamHandlerFileHandlerNullHandler,其他的handler放在logging.handlers里面,所以需要使用TimedRotatingFileHandler则需要import logging.handlers

logging分割日志用先往默认的文件(test.log)里打,等到分割条件的时候,把之前打的那部分日志转移到对应的分割文件里(上例中就是test.log.20141016.18),这样的好处就是每次最新的都在test.log中,不过你想统一后缀(比如test.2014101618.log)似乎有点困难了,而且应该会有额外的开销。

这里仅仅是简单解释了一下logging的时间分割文件方法,不是一个十分基础和详细的文章,如果您需要更详细的内容还请看下面的参考文章。

参考:

python logging使用方法(官方)
python logging模块文档(官方文档)
python logging TimedRotatingFileHandler(官方文档)
使用python的logging模块
python标准日志模块logging及日志系统设计
python logging现学现用 – TimedRotatingFileHandler使用方法

python生成时间分割的日志》上有3条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注