拖尾日志很慢

问题描述 投票:0回答:1

托管在pythonAnywhere上,在jupyter笔记本中工作,我创建了一个记录器

import logging
logging.basicConfig(
    format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
    filename="/home/jaa/bot/ma_clipboard.log",
    level=logging.INFO)
logger=logging.getLogger(__name__)
logger.info(f"enabled the logger {logger}")

同时在bash shell中,我拖尾日志文件:tail -f ma_clipboard.log

在笔记本内部,我正在使用python-telegram-bot,它处理来自外部的用户输入。

我的问题是,当我故意记录某些内容时,或者即使发生未捕获的异常时,日志尾部也不会很快更新。有时候我得等几分钟。这对于调试来说非常烦人。

我不确定延迟的来源是什么。 logger模块? tail命令?别的什么?我不认为它是python-telegram-bot独有的,或者我在Jupyter笔记本中工作,因为去年我有类似的问题拖尾django日志文件。

如何减少日志文件拖尾中的延迟?

python logging pythonanywhere
1个回答
4
投票

这是PythonAnywhere dev。 我们的基础架构需要一些时间才能将日志写入文件。我担心你可能无法做任何关于你的事情。

编辑

仔细检查后,我们注意到问题是不同的,并且可以解决您的问题。 tail -f查找文件属性的更改。您的文件通过nfs访问,缓存文件属性一段时间导致tail -f的延迟反应。解决方法是watch -n 0.1 tail [FILE],它会立即显示对文件的更改。您可以调整0.1秒间隔以节省CPU时间。

© www.soinside.com 2019 - 2024. All rights reserved.