Mi registrador se parece a esto:
log_config = { "version": 1, "disable_existing_loggers": True, "formatters": { "default": { "()": "uvicorn.logging.DefaultFormatter", "fmt": "%(asctime)s::%(levelname)s::%(name)s::%(filename)s::%(funcName)s::%(message)s", "datefmt": "%Y-%m-%dT%H:%M:%S%z", "use_colors": False, }, "access": { "()": "uvicorn.logging.AccessFormatter", "datefmt": "%Y-%m-%dT%H:%M:%S%z", "fmt": '%(asctime)s::%(levelprefix)s %(client_addr)s - "%(request_line)s" %(msecs)d %(status_code)s', "use_colors": False, }, }, "handlers": { "default": { "formatter": "default", "class": 'logging.FileHandler', "filename": CONFIG[SECTION]["default"] }, "access": { "formatter": "access", "class": 'logging.FileHandler', "filename": CONFIG[SECTION]["access"] }, }, "loggers": { "uvicorn": {"handlers": ["default"], "level": "INFO", "propagate": False}, "uvicorn.access": {"handlers": ["access"], "level": "INFO", "propagate": False}, } }Configuración de inicio:
uvicorn.run( app="app.main:app", host="0.0.0.0", port=8000, reload=True, log_config=log_config, proxy_headers=True, forwarded_allow_ips='*', log_level="info" )En el formato de acceso, no veo una forma de agregar tiempo de respuesta. Tampoco puedo encontrar una lista predeterminada de parámetros en ninguna parte. ¿Cómo puedo abordar esto?