如何让 UWSGI 以正确的级别记录 Flask 日志消息?
How can I get UWSGI to log Flask log messages at the correct level?
我在 systemd 下有一个 uwsgi 服务 运行。它似乎将从其托管的 Flask 应用程序收到的所有内容记录为 INFO
级别,而不是它应该记录的任何级别。
在我的 Python 代码中,我有一个名为 app
的 Flask 应用程序。我叫:
app.logger.error('TESTING LOGGING')
当我使用 journalctl -u uwsgi -p err
检查我的日志时,我没有看到我记录的消息。当我使用 journalctl -u uwsgi -p info
时,我会使用
我没有使用 uwsgi 的 systemd_logger 插件,但它看起来不会解决这个问题,因为它也总是在 INFO
等级:https://github.com/unbit/uwsgi/blob/3149df02ed443131c54ea6afb29fcbb0ed4d1139/plugins/systemd_logger/systemd_logger.c#L13
UWSGI 不会将这些消息记录到正确的级别,但我能够通过使用 Python systemd 包直接从 Flask 中完成。
import logging
from systemd import journal
logger = logging.getLogger(__name__)
journaldHandler = journal.JournalHandler()
logger.addHandler(journaldHandler)
logger.error('TESTING LOGGING')
我在 systemd 下有一个 uwsgi 服务 运行。它似乎将从其托管的 Flask 应用程序收到的所有内容记录为 INFO
级别,而不是它应该记录的任何级别。
在我的 Python 代码中,我有一个名为 app
的 Flask 应用程序。我叫:
app.logger.error('TESTING LOGGING')
当我使用 journalctl -u uwsgi -p err
检查我的日志时,我没有看到我记录的消息。当我使用 journalctl -u uwsgi -p info
时,我会使用
我没有使用 uwsgi 的 systemd_logger 插件,但它看起来不会解决这个问题,因为它也总是在 INFO
等级:https://github.com/unbit/uwsgi/blob/3149df02ed443131c54ea6afb29fcbb0ed4d1139/plugins/systemd_logger/systemd_logger.c#L13
UWSGI 不会将这些消息记录到正确的级别,但我能够通过使用 Python systemd 包直接从 Flask 中完成。
import logging
from systemd import journal
logger = logging.getLogger(__name__)
journaldHandler = journal.JournalHandler()
logger.addHandler(journaldHandler)
logger.error('TESTING LOGGING')