相关疑难解决方法(0)

向Flask的app.logger提供额外信息

Flask 0.10 的默认调试日志格式

debug_log_format =
'-------------------------------------------------------------------------\n%
%(levelname)s in %(module)s [%(pathname)s:%(lineno)d]:\n%(message)s
\n-------------------------------------------------------------------------'
Run Code Online (Sandbox Code Playgroud)

如何将其更改为:

'-------------------------------------------------------------------------\n%
work_id %(levelname)s in %(module)s [%(pathname)s:%(lineno)d]:\n%(message)s
\n-------------------------------------------------------------------------'
Run Code Online (Sandbox Code Playgroud)

其中work_id是每个请求的随机生成的UUID.

如果记录器是由我自己创建的,我可以使用a logging.LoggerAdapter并提供额外信息作为dict {'work_id': some_uuid},然后我可以使用在日志记录中访问它record.work_id.

但是这app.logger是由create_logger()Flasklogging.py创建,我是否必须修改Flask源来实现我想要的?

我也想过app.logger用我自己的记录器覆盖,就像app.logger = my_logger,它似乎不对.

python flask

15
推荐指数
1
解决办法
7080
查看次数

标签 统计

flask ×1

python ×1