Python日志记录 - logrotate选项

时间:2012-04-19 19:19:18

标签: python logging multiprocessing logrotate

我正在尝试使用logrotate来旋转多进程python服务的日志。通常使用以下哪种组合(正确且安全)?

  • WatchedFileHandler + logrotate with create option

    或者

  • FileHandler + logrotate with copytruncate option

选项-1似乎用于openstack nova和glance项目。我还没有看到使用选项-2。选项-2是否会按预期工作?当用于多进程应用程序时,这些方法是否有任何缺点?

2 个答案:

答案 0 :(得分:2)

由于WatchedFileHandler专门用于外部轮换工具,例如logrotate,我建议使用它(选项1)。为什么你认为你需要选项2?

在每个进程写入自己的日志的多进程环境中,应该没有任何问题。但是,进程不应共享日志文件。

答案 1 :(得分:0)

我建议使用Python自己的日志轮换来获得最佳集成。唯一的缺点是你有一个额外的地方来配置细节。