diff --git a/backend/app/core/audit_middleware.py b/backend/app/core/audit_middleware.py index f42f1b0..d310e52 100644 --- a/backend/app/core/audit_middleware.py +++ b/backend/app/core/audit_middleware.py @@ -56,7 +56,19 @@ _TRACKED_READ_PREFIXES = ( ) # 永久忽略的路径前缀 -_IGNORED_PREFIXES = ("/health", "/docs", "/redoc", "/openapi.json") +# +# 两类内容: +# 1. 探针与文档(/health、/docs…)—— 噪声没有审计价值 +# 2. 图片类端点(/api/v1/products/qrcode)—— 走 加载,且该端点 +# 刻意不加鉴权(见 endpoints/products.py 的说明)。路径命中 +# _TRACKED_READ_PREFIXES 的 /api/v1/products 前缀、又不是 bare list, +# 会被判成「查看详情」逐条留痕:一次列表页渲染就并发拉几十张图, +# 逐条留痕会把审计日志塞满,真正有价值的操作反而被淹没。 +# 它也不含业务数据(只把调用方给的序列号渲染成二维码图片)。 +_IGNORED_PREFIXES = ( + "/health", "/docs", "/redoc", "/openapi.json", + "/api/v1/products/qrcode", +) # 路径段 → 审计模块 _PATH_MODULE: dict[str, str] = {