1

我有一个在 systemd 下运行的 uwsgi 服务。它似乎正在记录从其托管的 Flask 应用程序收到的所有内容INFO级别,而不是它应该记录的任何级别。

在我的 Python 代码中,我有一个名为app. 我打电话:

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

4

1 回答 1

1

UWSGI 不会将这些消息记录到正确的级别,但我可以通过使用 Python systemd 包直接在 Flask 中完成。

import logging
from systemd import journal

logger = logging.getLogger(__name__)
journaldHandler = journal.JournalHandler()
logger.addHandler(journaldHandler)

logger.error('TESTING LOGGING')

https://pypi.org/project/systemd/

于 2018-12-06T00:53:36.080 回答