灵活运用日志轮转,我又变强了
在实现日志轮转之前,我们首先要明白什么是日志轮转?在大多数后台服务运行时,会生成大量的日志记录,而这些记录并不是所有都需要永久保存,那么我们就可以采用日志轮转的方式,使用新的日志覆盖掉最旧的日志,并采用多个文件循环存储,方便更加快捷的定位到我们所需的内容。
不会实现基本的日志记录?可参考《logging日志记录模块,你想要的在这里 》,
在Python中,日志轮转仍然引用logging模块中封装好的类,常用的轮转方式有两种:
第一种:按照时间轮转,即每隔一段时间,生成一个新的日志文件,直到设定的最大文件个数,然后开始循环
第二种:按照文件大小轮转,及给每个文件设置一个存储大小,直到设定的最大文件个数,然后开始循环
日志轮转与普通日志记录虽然输出渠道都是文件,但它们调用的类不同,接下来就来看看这两种轮转方式的代码,
1、时间轮转
from logging.handlers import RotatingFileHanler file_handler = RotatingFileHanler( filename='test.log', encoding='utf-8 , when='D', interval=3, backupCount=7 )
上面代码表示每个3天新建一个日志文件,最多可以备份7个。
2、文件大小轮转
from logging.handlers import TimedRotatingFileHandler fh = TimedRotatingFileHandler( filename='test.log', encoding='utf-8', mode='a', maxBytes=1024*1024*50 backupCount=7 )
上面代码表示每个日志文件可存储50M的内容,最多可以备份7个。

浙公网安备 33010602011771号