Update and enable access log middleware (#348)

This commit is contained in:
Wu Clan
2024-07-10 16:47:23 +08:00
committed by GitHub
parent f9ec9d5d56
commit 5a283b1c3c
2 changed files with 6 additions and 3 deletions
+5 -2
View File
@@ -8,11 +8,14 @@ from backend.utils.timezone import timezone
class AccessMiddleware(BaseHTTPMiddleware):
"""记录请求日志中间件"""
"""请求日志中间件"""
async def dispatch(self, request: Request, call_next: RequestResponseEndpoint) -> Response:
start_time = timezone.now()
response = await call_next(request)
end_time = timezone.now()
log.info(f'{response.status_code} {request.client.host} {request.method} {request.url} {end_time - start_time}')
log.info(
f'{request.client.host: <15} | {request.method: <8} | {response.status_code: <6} | '
f'{request.url.path} | {(end_time - start_time).total_seconds() * 1000.0}ms'
)
return response