From 1e775c9a36d8a8f8d656f57ea35c89fbe64ff5fd Mon Sep 17 00:00:00 2001 From: MingxuanGame Date: Fri, 3 Oct 2025 13:25:31 +0000 Subject: [PATCH] fix(log): don't show traceback in log --- app/log.py | 4 ++- app/middleware/verify_session.py | 56 ++++++++++++++------------------ 2 files changed, 28 insertions(+), 32 deletions(-) diff --git a/app/log.py b/app/log.py index e171a0d..ba0ef95 100644 --- a/app/log.py +++ b/app/log.py @@ -200,7 +200,9 @@ def dynamic_format(record): real_name = record["extra"].get("real_name", "") or record["name"] name = f"{real_name}" - return f"{{time:YYYY-MM-DD HH:mm:ss}} [{{level}}] | {name} | {{message}}\n" + return ( + f"{{time:YYYY-MM-DD HH:mm:ss}} [{{level}}] | {name} | {{message}}{{exception}}\n" + ) logger.remove() diff --git a/app/middleware/verify_session.py b/app/middleware/verify_session.py index 2a9c911..58ed754 100644 --- a/app/middleware/verify_session.py +++ b/app/middleware/verify_session.py @@ -57,39 +57,33 @@ class VerifySessionMiddleware(BaseHTTPMiddleware): async def dispatch(self, request: Request, call_next: Callable) -> Response: """中间件主处理逻辑""" - try: - # 检查是否跳过验证 - if self._should_skip_verification(request): - return await call_next(request) - - # 获取当前用户 - user = await self._get_current_user(request) - if not user: - # 未登录用户跳过验证 - return await call_next(request) - - # 获取会话状态 - session_state = await self._get_session_state(request, user) - if not session_state: - # 无会话状态,继续请求 - return await call_next(request) - - # 检查是否已验证 - if session_state.is_verified(): - return await call_next(request) - - # 检查是否需要验证 - if not self._requires_verification(request, user): - return await call_next(request) - - # 启动验证流程 - return await self._initiate_verification(request, session_state) - - except Exception as e: - logger.error(f"Error: {e}") - # 出错时允许请求继续,避免阻塞 + # 检查是否跳过验证 + if self._should_skip_verification(request): return await call_next(request) + # 获取当前用户 + user = await self._get_current_user(request) + if not user: + # 未登录用户跳过验证 + return await call_next(request) + + # 获取会话状态 + session_state = await self._get_session_state(request, user) + if not session_state: + # 无会话状态,继续请求 + return await call_next(request) + + # 检查是否已验证 + if session_state.is_verified(): + return await call_next(request) + + # 检查是否需要验证 + if not self._requires_verification(request, user): + return await call_next(request) + + # 启动验证流程 + return await self._initiate_verification(request, session_state) + def _should_skip_verification(self, request: Request) -> bool: """检查是否应该跳过验证""" path = request.url.path