Zek*_*oid 10 python logging flask
默认情况下,Flask会直接使用INFO标记记录GET和POST请求等内容.实现自定义记录器时,这些记录器将发布到同一记录器并使我的INFO层变得混乱.有没有办法将它们降级到像DEBUG这样的另一层?
这是我使用的记录器:
# create logger
FORMAT = '%(asctime)s - %(module)s - %(levelname)s - Thread_name: %(threadName)s - %(message)s'
logging.basicConfig(
format=FORMAT, datefmt='%m/%d/%Y %I:%M:%S %p',
filename='wizard/logs/example.log', level=logging.DEBUG)
Run Code Online (Sandbox Code Playgroud)
foo*_*rto 13
我不确定如何降级请求的日志级别(因为它通常在代码中明确说明,例如logging.info("...")),但以下内容可以帮助您减少Flask本身的详细程度.
Python允许您拥有多个记录器,每个记录器都有自己的日志级别.如果你知道模块的名称是或它与所描述的注册名称可以修改任何现有的记录在这里.
例如:
import logging
logger = logging.getLogger("mypackage.mymodule") # or __name__ for current module
logger.setLevel(logging.ERROR)
Run Code Online (Sandbox Code Playgroud)
以上任何python模块都可以完成.Flask为每个应用提供一个记录器.您可以像这样获得对它的引用:
import logging
from flask import Flask
app = Flask(__name__) # or instead of __name__ provide the name of the module
app.logger.setLevel(logging.ERROR)
Run Code Online (Sandbox Code Playgroud)