我正在使用django1.3的日志记录特性,并尝试实现一个timedrotingfilehandler来每隔小时。那个记录器每小时都会成功地旋转,但似乎在每次日志请求期间,它都会截断文件。那个文件只有最后一次写入消息。是这是django处理程序中的问题还是我丢失了在某个地方日志字典如下:
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'standard': {
'format' : "%(asctime)s:%(pathname)s:%(lineno)s: %(message)s",
'datefmt' : "%d/%b/%Y %H:%M:%S"
},
},
'handlers': {
'logfile': {
'level':'DEBUG',
'class':'logging.handlers.TimedRotatingFileHandler',
'filename': "/tmp/log1.log",
'when' : 'hour',
'interval' : 0,
'formatter': 'standard',
},
},
'loggers': {
'collection': {
'handlers': ['logfile'],
'level': 'DEBUG',
},
}
}
请注意:当间隔设置为1时,日志不会旋转的。是这是django的虫子?在
无论何时创建日志文件,只要在文件名中添加一个日期时间戳。这将确保文件永远不会被截断。在
我想有多个进程在写入日志文件,在这种情况下,您可以使用ConcurrentLogHandler来避免截断。在
您需要设置:
从代码来看,当前支持的“when”事件:
Interval是要计数的间隔数(例如,当=='H'且Interval==2时,将产生2小时)。在
相关问题 更多 >
编程相关推荐