Skip to content

Commit 159d362

Browse files
committed
Fix safely of access ctx in exception handlers
1 parent 6a06579 commit 159d362

File tree

2 files changed

+5
-8
lines changed

2 files changed

+5
-8
lines changed

backend/common/log.py

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66

77
from loguru import logger
88

9-
from backend.common.context import ctx
109
from backend.core.conf import settings
1110
from backend.core.path_conf import LOG_DIR
1211
from backend.utils.timezone import timezone
@@ -78,12 +77,8 @@ def setup_logging() -> None:
7877

7978
# request_id 过滤器
8079
def request_id_filter(record: logging.LogRecord) -> logging.LogRecord:
81-
if ctx.exists():
82-
rid = get_request_trace_id()
83-
record['request_id'] = rid[: settings.TRACE_ID_LOG_LENGTH]
84-
else:
85-
record['request_id'] = settings.TRACE_ID_LOG_DEFAULT_VALUE
86-
80+
rid = get_request_trace_id()
81+
record['request_id'] = rid[: settings.TRACE_ID_LOG_LENGTH]
8782
return record
8883

8984
# 配置 loguru 处理器

backend/utils/trace_id.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,6 @@
44

55
def get_request_trace_id() -> str:
66
"""从请求头中获取追踪 ID"""
7-
return ctx.get(settings.TRACE_ID_REQUEST_HEADER_KEY, settings.TRACE_ID_LOG_DEFAULT_VALUE)
7+
if ctx.exists():
8+
return ctx.get(settings.TRACE_ID_REQUEST_HEADER_KEY, settings.TRACE_ID_LOG_DEFAULT_VALUE)
9+
return settings.TRACE_ID_LOG_DEFAULT_VALUE

0 commit comments

Comments
 (0)