我在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。有什么建议吗?
答案 0 :(得分:1)
RotatingFileHandler
不适用于多进程系统。您注意到文件过大的每个进程都会启动新日志,因此您最多可以获得5个新日志。实现它并不容易:在创建新文件之前必须获取进程间锁,并通知每个进程重新打开它。您最好在服务器重启或设置单进程日志服务器时使用外部(随操作系统提供)轮换。