flask在控制台打印出来的请求日志如何记录到日志文档?

想把flask在开发环境跑的时候的控制台输出的日志也保存到文件。
参考了网上,基本上都是先配置logger然后自己在代码中加入logger.info('xxx')来记录日志。

我想实现的效果是,控制台输出的一些请求以及默认打印出来的日志都直接写到log文件。

我配置的logger代码如下:

#app.__init__.pydef create_app(config_name):
    ...
    filehandler = logging.handlers.TimedRotatingFileHandler("flask.log", "M", 1, 0)
    filehandler.setLevel('DEBUG')
    app.logger.addHandler(filehandler
    ...

按理效果应该是有一个flask.log文件生成,然后每分钟另存一个。实际效果是有flask.log文件产生,但是控制台打印出来的一些请求和其他信息都没有,也不会按时间自动生成新的日志。

求大神解惑


一只名叫tom的猫
浏览 4344回答 1
1回答

肥皂起泡泡

TimedRotatingFileHandler,你这个拼写错了,你这种写法,我测试半天也找不出原因,毕竟才工作半年,要是找到原因了麻烦告诉下,我把这个写到工厂函数外面可以记录:import logging logging.basicConfig(level=logging.DEBUG) filehandler = logging.handlers.TimedRotatingFileHandler("flask.log", "M", 1, 0)# filehandler.setLevel('DEBUG')logging.getLogger().addHandler(filehandler)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python