FastAPI中怎么实现API日志记录

   2024-10-19 5660
核心提示:要在 FastAPI 中实现 API 日志记录,可以使用 Python 内置的 logging 模块。以下是一个示例代码:from fastapi import FastAPIim

要在 FastAPI 中实现 API 日志记录,可以使用 Python 内置的 logging 模块。以下是一个示例代码:

from fastapi import FastAPIimport loggingapp = FastAPI()# 配置日志记录logging.basicConfig(filename="api_log.txt", level=logging.INFO, format="%(asctime)s - %(levelname)s - %(message)s")# 日志记录中间件@app.middleware("http")async def log_requests(request, call_next):    logger = logging.getLogger("api_logger")    logger.info(f"Received request: {request.method} {request.url}")    response = await call_next(request)    logger.info(f"Responded with: {response.status_code}")    return response# 定义一个路由@app.get("/")async def read_root():    return {"Hello": "World"}

在上面的示例中,我们首先配置了日志记录器,将日志记录到名为 “api_log.txt” 的文件中,并设置记录级别为 INFO。然后定义了一个中间件函数 log_requests,它会在每次请求进入时记录请求信息,并在请求响应时记录响应信息。最后定义了一个简单的路由 /,当访问根路由时返回一个简单的 JSON 响应。

通过这种方式,我们可以在 FastAPI 中实现 API 的日志记录。您可以根据需要扩展日志记录功能,例如添加更多的日志信息、设置不同的日志级别等。

 
举报打赏
 
更多>同类维修大全
推荐图文
推荐维修大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号