rsb*_*rsb 6 python werkzeug flask
Flask日志记录(即app.logger.info(...)等)的问题在于子模块不使用它,所以在我看来,全局配置应用程序日志记录的唯一方法是通过底层python日志记录机制:例如,
logging.config.fileConfig('config/logging.conf')
Run Code Online (Sandbox Code Playgroud)
但是这不配置Flask的默认处理程序,因此例如,未配置HTTP日志记录.所以我得到混合日志:
2015-07-28 14:57:47,320 [main.py][INFO] Starting... # Python log
[2015-07-28 14:58:49] "GET /demo HTTP/1.1" 200 956 0.318825 # Flask log
Run Code Online (Sandbox Code Playgroud)
任何人都可以建议通过配置文件全局配置日志记录的标准做法(即,以便我可以轻松配置单个包).
此外,我似乎无法将HTTP日志记录(GET等)移除到stderr(我认为它来自werkzeug); 设置logging.getLogger('werkzeug').setLevel()仅影响与HTTP日志记录无关的werkzeug日志.
谢谢.
我很确定 Flask 文档中有关于此的文章: https: //flask.palletsprojects.com/en/1.1.x/logging/#other-libraries
它基本上建议将其他库的处理程序添加到 Flask 的根目录中。这是他们给出的例子:
from flask.logging import default_handler
root = logging.getLogger()
root.addHandler(default_handler)
root.addHandler(mail_handler)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
257 次 |
最近记录: |