完整的日志管理(python)

zub*_*hta 0 python linux logging monitoring

已经提出了类似的问题,但我没有遇到过一种易于操作的方式

我们有一些各种应用程序日志填补了空间,我们面临其他不必要的问题.如何编写监控脚本(压缩特定大小的文件,移动它们,观察它们等等)以进行此维护?我正在寻找一个简单的解决方案(如使用什么?),如果可能的话,在python中或者只是一个shell脚本.

谢谢.

Nou*_*him 7

执行此操作的"标准"方法(至少在大多数Gnu/Linux发行版上)是使用logrotate.我/etc/logrotate.conf在Debian机器上看到了一个有关哪些文件可以旋转以及以什么频率旋转的详细信息.它由每日的cron条目触发.这是我推荐的.

如果你希望你的应用程序本身这样做(这真的很痛苦,因为它不是它的工作),你可以考虑编写一个自定义日志处理程序.RotatingFileHandler(或TimedRotatingFileHandler)可能有效,但您可以编写自定义的.

默认情况下,大多数系统都设置为自动旋转syslog发出的日志文件.您可能需要考虑使用SysLogHandler并记录到syslog(来自所有应用程序,无论语言如何),以便系统基础结构自动为您处理事情.