https://wenku.baidu.com/view/9b9b88b5350cba1aa8114431b90d6c85ed3a881a.html?_wkts_=1683372789291&bdQuery=uvicorn+log_level
官方说明
http://www.uvicorn.org/settings/#logging
#启动方式
uvicorn.run(...,access_log=True,log_config="log_config.json" ,log_level=logging.INFO)
#log_level=info,debug,warning,error
支持字符串,json,ini,yaml格式
https://blog.csdn.net/youxi_36ga/article/details/120536827
https://blog.csdn.net/qq_33801641/article/details/121313494
json格式
{
"version": 1,
"disable_existing_loggers": false,
"formatters": {
"default": {
"()": "uvicorn.logging.DefaultFormatter",
"fmt": "%(levelname)s %(asctime)s %(message)s",
"use_colors": null
},
"access": {
"()": "uvicorn.logging.AccessFormatter",
"fmt": "%(levelname)s %(asctime)s %(client_addr)s - \"%(request_line)s\" %(status_code)s"
}
},
"handlers": {
"default": {
"formatter": "default",
"class": "logging.StreamHandler",
"stream": "ext://sys.stderr"
},
"access": {
"formatter": "access",
"class": "logging.StreamHandler",
"stream": "ext://sys.stderr"
}
},
"loggers": {
"uvicorn": {"handlers": ["default"], "level": "ERROR", "propagate": false},
"uvicorn.error": {"level": "INFO"},
"uvicorn.access": {"handlers": ["access"], "level": "INFO", "propagate": false}
}
}
日志参数说明
https://www.cnblogs.com/poloyy/p/15549265.html
%(name)s 日志记录器的名称(记录通道)
%(levelno)s
日志记录级别的数字
DEBUG=10、INFO=20、WARNING=30、ERROR=40、CRITICAL=50
%(levelname)s
日志记录级别的文本
“DEBUG”、“INFO”、“WARNING”、“ERROR”、“CRITICAL”
%(pathname)s 日志调用的源文件的完整路径名
%(filename)s 日志调用的源文件的文件名部分
%(module)s 日志调用的源文件的文件名的名称部分
%(lineno)d 日志调用的源行号
%(funcName)s 日志调用的函数名
%(created)f
打印日志的时间
time.time() 的返回值
%(asctime)s
打印日志的时间
datetime.datetime.now() 的返回值
%(msecs)d 打印日志的毫秒部分
%(relativeCreated)d
打印日志的时间,毫秒为单位
是相对于加载 logging 模块的时间(通常在应用程序启动时)
%(thread)d 线程ID
%(threadName)s 线程名,一般是主线程 MainThread
%(process)d 进程ID
%(message)s 日志信息
LOGGING_CONFIG["formatters"]["access"]["fmt"] = '%(levelname)s %(asctime)s %(client_addr)s - "%(request_line)s" %(status_code)s'
LOGGING_CONFIG["formatters"]["default"]["fmt"] = "%(levelname)s %(asctime)s %(message)s"
%(name)s
%(levelprefix)s
%(levelname)s