【发布时间】:2019-02-16 03:20:16
【问题描述】:
我正在使用 config 设置 python 记录器。我希望日志文件包含日期(可能还有时间)。我还希望在那个日期,每个日志文件都只有特定的大小,并且只保留 3 个这样的旧日志文件。
例如,我想获取以下形式的日志文件:
mylog-2018-09-11.log
mylog-2018-09-11.log.1
mylog-2018-09-11.log.2
mylog-2018-09-11.log.3
按照here 的解释,我尝试使用以下形式的配置来旋转文件处理程序:
config = {
#...
'handlers': {
'file': {
'class': 'logging.handlers.RotatingFileHandler',
'filename': 'mplog.log',
'mode': 'w',
'formatter': 'detailed',
'maxBytes': 10000,
'backupCount': 3
},
},
#...
}
logging.config.dictConfig(config)
它会产生如下的日志文件:
mylog.log
mylog.log.1
mylog.log.2
mylog.log.3
但我无法理解,如何在日志文件名中获取日期。是否可以使用配置和一些处理程序来做到这一点,比如RotatingFileHandler 或TimeRotatingFileHandler?或者说我可以以某种方式将日志文件名设置为包含dictConfig() 调用之后的日期吗?
【问题讨论】:
标签: python python-3.x logging