python - logging 如何控制刷新到日志文件的次数

标签 python python-2.7 logging flush

我必须使用日志记录模块,并想知道是否有一种方法可以通过将我的数据附加到现有文件来登录现有日志文件,更重要的是我是否可以控制刷新到文件中的时间。

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

有什么想法和代码示例吗? 谢谢

最佳答案

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

import logging

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

log.warning('This is a message')

关于python - logging 如何控制刷新到日志文件的次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39396393/

相关文章:

java - 访问 Java 应用程序中的记录器

python - 为什么我的 for 循环中的 if 条件在一次迭代为真后停止验证?

python - 使用 Celery worker 与 SQLAlchemy DB 交互,包括从请求中了解用户

python - Pandas :如何对子类别中的前 N ​​个观察结果进行子集(和求和)?

python-2.7 - OpenCV:如何编写视频,为什么我的框架卡住了?

python - Py2Exe 生成日志文件

elasticsearch - 将日志从 kafka 传输到 elasticsearch

python - 查找文件中第一个唯一出现的位置

python - 无法在Django中运行manage.py runserver

python - 使用 iGraph 定位边缘标签