如何解决 Fastapi使用uvicorn 输出日志重复 问题如图:
会发现输出的日志有重复。
解决方案:在 uvicorn.run 运行配置里配置 log_config 并且
loggers 只 配置 “”
项 设置null处理。也就是root日志 null处理。
如下:
custom_logging_config = {
"version": 1,
"disable_existing_loggers": False,
"formatters": {
"default": {
"()": "uvicorn.logging.DefaultFormatter",
"fmt": "%(asctime)s %(levelprefix)s %(message)s",
'datefmt': '%Y-%m-%d %H:%M:%S',
"use_colors": None,
},
},
"handlers": {
"default": {
"formatter": "default",
"class": "logging.StreamHandler",
"stream": "ext://sys.stderr",
},
'null': {
"formatter": "default",
"class": 'logging.NullHandler'
}
},
"loggers": {
"": {"handlers": ["null"], "level": "DEBUG"},
"uvicorn.error": {"handlers": ["default"], "level": "DEBUG"}
},
}
uvicorn.run("project.app:app",
host=xxx,
port=xxx,
reload=xxx,
workers=xxx,
debug=xxx,
log_config=custom_logging_config
)
运行结果:
版权声明:本文为Youxi_GA原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。