uvicorn自定义日志
INFO: 127.0.0.1:7225 - "POST /app HTTP/1.1" 200 OK
现在给这个日志加时间:
import asyncio
import importlib.util
import logging
import uvicorn
from fastapi import FastAPI
from starlette.responses import JSONResponse
app = FastAPI()
@app.get("/")
async def root():
    return {"message": "Hello World"}
@app.post("/app")
async def check_ticket(data: dict):
    return JSONResponse(content={"code":0, "msg": data})
LOGGING_CONFIG = {
    'version': 1,
    'disable_existing_loggers': False,
    'formatters': {
        'default': {
            '()': 'uvicorn.logging.DefaultFormatter',
            'fmt': '%(levelprefix)s %(message)s',
            'use_colors': None,
        },
        'access': {
            '()': 'uvicorn.logging.AccessFormatter',
            'fmt': '%(asctime)s - %(levelprefix)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.stdout',
        },
    },
    'loggers': {
        'uvicorn': {
            'handlers': [
                'default',
            ],
            'level': 'INFO',
        },
        'uvicorn.error': {
            'level': 'INFO',
        },
        'uvicorn.access': {
            'handlers': [
                'access',
            ],
            'level': 'INFO',
            'propagate': False,
        },
    },
}
if __name__ == "__main__":
    uvicorn.run(app, host="127.0.0.1", port=8888,log_config=LOGGING_CONFIG)

遂断定与FastAPI返回无关,网络层问题。

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号