要在 FastAPI 中实现 API 日志记录,可以使用 Python 内置的 logging 模块。以下是一个示例代码:
from fastapi import FastAPI
import logging
app = 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 的日志记录。您可以根据需要扩展日志记录功能,例如添加更多的日志信息、设置不同的日志级别等。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/1024001.html