mod_python django日志记录问题

时间:2009-10-30 04:10:00

标签: python django logging

我在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。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

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