用途:为全栈项目统一机器可读的日志规范。后端使用 structlog 输出 JSON,前端使用自定义 Logger 类,并加入关联 ID、日志上下文与级别指南。
主要能力:强制 JSON 结构化日志;通过 X-Correlation-ID 头实现请求追踪;统一日志级别(ERROR/WARNING/INFO/DEBUG);按领域规定上下文字段(API 请求、认证、智能体执行、数据库操作、外部服务);敏感数据脱敏;前端用 Logger 替换 console.log。
使用方式:后端通过 from src.utils import get_logger 获取 logger,用 logger.info("事件", key=value) 结构化记录;注册 CorrelationIdMiddleware 与请求日志中间件;生产环境用 JSONRenderer,调试用 ConsoleRenderer。前端从 @/lib/logger 导入 logger,调用 info/warn/error/debug,并在请求中透传 X-Correlation-ID。
适用场景:新增模块或 API 端点日志、审查日志一致性、实现请求追踪、通过日志分析排查生产问题、搭建日志聚合与监控管道。
限制:不适用于错误响应格式(用 error-taxonomy)、指标/仪表盘设计或 CI/CD 配置;禁止记录密码、令牌、API 密钥、会话 ID 及完整请求/响应体;高频事件需采样或使用 DEBUG;日志不得包含受 Privacy Act 1988 约束的数据。具体配置细节以项目现有实现为准。