编写一个每天旋转日志的自定义RotatingFileHandler

时间:2013-04-29 10:36:40

标签: python django logging rotation

我正在开发一个Django应用程序,并希望每天旋转日志的自定义处理程序 - 我一直在与TimedRotatingFileHandler(臭名昭着的'午夜'混乱)进行斗争。

处理程序需要根据当前系统日期旋转日志文件 - 即每天的新日志文件。我该怎么做?

2 个答案:

答案 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