From 85b7b265d6d7fa561c5e5400aa77766c38649637 Mon Sep 17 00:00:00 2001 From: Kris <2893855659@qq.com> Date: Thu, 9 Jul 2026 13:20:42 +0800 Subject: [PATCH] =?UTF-8?q?fix(logging):=20=E8=A1=A5=E5=85=A8loguru?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E6=A0=BC=E5=BC=8F=E7=9A=84extra=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E5=BC=95=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复日志无法输出bind传入的上下文参数的问题,避免链路排查时丢失异常类型与消息等关键信息 --- backend/package/yuxi/utils/logging_config.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/backend/package/yuxi/utils/logging_config.py b/backend/package/yuxi/utils/logging_config.py index 4b909fb7..5030d5ac 100644 --- a/backend/package/yuxi/utils/logging_config.py +++ b/backend/package/yuxi/utils/logging_config.py @@ -53,10 +53,14 @@ def setup_logger(name, level="DEBUG", console=True): loguru_logger.remove() # 添加文件日志(无颜色) + # 末尾追加 {extra}:loguru 会将通过 bind(**kwargs) 传入的附加上下文 + # (如 trace_id/error_type/error_message)合并到 record 的 extra 字典, + # format 显式引用 {extra} 才能输出,否则 kwargs 会被静默丢弃,导致 + # stage 失败、投递失败等错误链路看不到具体异常类型与消息。 loguru_logger.add( LOG_FILE, level=level, - format="{time:YYYY-MM-DD HH:mm:ss} - {level} - {file}:{line} - {message}", + format="{time:YYYY-MM-DD HH:mm:ss} - {level} - {file}:{line} - {message} {extra}", encoding="utf-8", rotation="10 MB", retention="30 days", @@ -74,6 +78,7 @@ def setup_logger(name, level="DEBUG", console=True): "{level} " "{file}:{line}: " "{message}" + " {extra}" ), colorize=True, enqueue=True,