有没有更好的方法来监视日志文件?(linux / python)

我正在试图监视某些进程在linux上运行的日志文件(创build一个联合日志文件,其中日志条目在发生时分组在一起)。 目前我正在考虑打开正在logging的文件,用inotify(或包装器)轮询,然后检查是否可以读取更多的文件。

有没有更好的方法来做到这一点? 也许是一些抽象的文件读取/更改的图书馆观看?

为什么“尾巴-f”不够? 你可以使用popen和pipe来从Python处理这个。

系统的发生器技巧程序员展示了如何使用Python生成器来解决这类问题; 特别是监视(大)日志文件。 我建议给它一个阅读。

如果你自己做,你可能会这样做:如果检测到文件修改,获取文件的大小。 如果它比上次大,你可以寻找到前一个“最后”的位置(即以前的大小),并从那里读取。