记录如何控制刷新日志文件的时间

时间:2016-09-08 16:48:44

标签: python python-2.7 logging flush

我将使用日志记录模块并想知道是否有办法登录现有日志文件,方法是将我的数据附加到现有文件中,如果我可以控制我刷新文件的时间,则更重要。

目前我需要能够一直刷新文件,因为在某些情况下运行带日志记录的逻辑的脚本可能会崩溃,所以我需要确切知道程序停止的位置。

任何想法和代码示例? 感谢

1 个答案:

答案 0 :(得分:1)

如果您使用logging.FileHandler并选择现有日志文件,则默认情况下它将附加到该文件。实际写入日志记录的方法是日志处理程序上的emit()方法。如果您查看FileHandler的源代码,每次后写flush,那么默认情况下应该执行您想要的操作。

import logging

log = logging.getLogger()
handler = logging.FileHandler('/path/to/log.txt')
log.addHandler(handler)

log.warning('This is a message')