python django日志记录问题
我在settings.py文件中使用如下的日志记录设置:
logging.basicConfig(level = LOG_LEVEL,format = LOG_FORMAT);
handler = logging.handlers.RotatingFileHandler(LOG_FILE_PATH,'a',LOG_FILE_SIZE,LOG_FILE_NUM);
formatter = logging.Formatter(LOG_FORMAT);
handler.setFormatter(格式化器);
logging.getLogger()。addHandler操作(处理)
我使用mod_python和apache2。
问题是:当日志旋转时,我得到了许多同时创建的日志文件。 例如,我在apache中设置了5个工作进程,当它旋转时,我得到了log.1,log.2 ... log.5。
有什么建议么?
RotatingFileHandler
不适用于多进程系统。 您注意到每个进程都会注意到该文件太大并且会启动新日志,因此您最多可以获得5个新日志。 要正确实现它并不那么容易:在创建新文件之前必须获得进程间锁,并通知每个进程重新打开它。 您最好在服务器重启或设置单进程日志记录服务器时使用外部(与您的操作系统一起提供)轮换。