gpt4 book ai didi

Python Flask 将访问日志写入 STDERR

转载 作者:太空狗 更新时间:2023-10-29 22:18:50 25 4
gpt4 key购买 nike

Flask 正在将访问日志写入 STDERR 流而不是 STDOUT。如何更改此配置,以便访问日志转到 STDOUT 并将应用程序错误转到 STDERR?

open-cricket [master] python3 flaskr.py > stdout.log 2> stderr.log &
[1] 11929

open-cricket [master] tail -f stderr.log
* Running on http://127.0.0.1:9001/
127.0.0.1 - - [11/Mar/2015 16:23:25] "GET /?search=Sachin+Tendulkar+stats HTTP/1.1" 200 -
127.0.0.1 - - [11/Mar/2015 16:23:25] "GET /favicon.ico HTTP/1.1" 404 -

最佳答案

我假设您使用的是 flask 开发服务器。

Flask的开发服务器基于werkzeug ,其 WSGIRequestHandler 又基于 BaseHTTPServer在标准库上。

您会注意到,WSGIRequestHandler overrides the logging methods , log_request, log_errorlog_message, 使用它自己的 logging.Logger - 所以你可以简单地覆盖它作为你希望,本着 IJade 的回答精神。

如果你走那条路,我认为添加你自己的 FileHandler 会更干净相反,split the stdout and stderr output using a filter

但是请注意,所有这些都是非常具体的实现 - 确实没有合适的接口(interface)来执行您想要的操作

虽然这与您的实际问题无关,但我觉得我真的必须问 - 您为什么担心开发服务器上每个日志中的内容

如果您遇到此类问题,您不应该已经在运行一个真正的网络服务器了吗?

关于Python Flask 将访问日志写入 STDERR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28984752/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com