我正在开发一个Django应用程序,并希望每天旋转日志的自定义处理程序 - 我一直在与TimedRotatingFileHandler(臭名昭着的'午夜'混乱)进行斗争。
处理程序需要根据当前系统日期旋转日志文件 - 即每天的新日志文件。我该怎么做?
答案 0 :(得分:3)
我认为对我来说最好的解决方案是使用日期构建日志文件名。我做到了。
'handlers': {
'default': {
'level':'DEBUG',
'class':'logging.FileHandler',
'filename': '/path/debug_' + date.today().strftime('%d%m%Y') + '.log',
'formatter':'standard',
},
}
答案 1 :(得分:1)
如果您使用的是Python> = 2.6的POSIX平台,则可以使用外部日志旋转器(例如logrotate
)和WatchedFileHandler
。