我正在尝试使用logrotate来旋转多进程python服务的日志。通常使用以下哪种组合(正确且安全)?
WatchedFileHandler + logrotate with create option
或者
FileHandler + logrotate with copytruncate option
选项-1似乎用于openstack nova和glance项目。我还没有看到使用选项-2。选项-2是否会按预期工作?当用于多进程应用程序时,这些方法是否有任何缺点?
答案 0 :(得分:2)
由于WatchedFileHandler
专门用于外部轮换工具,例如logrotate
,我建议使用它(选项1)。为什么你认为你需要选项2?
在每个进程写入自己的日志的多进程环境中,应该没有任何问题。但是,进程不应共享日志文件。
答案 1 :(得分:0)
我建议使用Python自己的日志轮换来获得最佳集成。唯一的缺点是你有一个额外的地方来配置细节。