用途:在新增或重构日志语句、用户询问日志格式或需要为项目制定、审查日志标准时启用;也适用于日志不足或曾发生数据泄露后的整改。
主要能力: 结构化:优先使用键值字段(如 JSON),避免长文本,全应用统一结构(timestamp、level、message、fields),便于查询解析。 级别:ERROR 用于失败与异常,WARN 用于可恢复问题与弃用,INFO 用于关键业务事件与请求摘要,DEBUG 用于详细流程,生产环境应禁用或采样。 上下文:可用时包含 request_id、trace_id 或 correlation_id;仅在安全且符合策略时记录 user_id、order_id。不得以明文记录完整 PII(邮箱、电话、地址)。 禁止密钥:绝不记录密码、令牌、API 密钥或完整卡号,需要时应脱敏或省略。 统一入口:使用项目既有日志库(Winston、Pino、log4j、structlog 等)并输出到平台采集的同一管道(如 stdout)。
使用方式:先查看项目现有格式、库和级别并保持一致;按场景选择级别(失败用 error,可恢复用 warn,关键动作用 info,详细流程用 debug,热路径避免 info 逐项输出,改用 debug 或采样);以结构化字段补充请求 ID、操作、耗时、状态及允许的标识符;脱敏后验证日志进入 stdout 或配置接收端、格式可解析、样本中无密钥与 PII。
记录内容参考:请求起止用 INFO 记 method、path、status、duration_ms、request_id,不记 body 和含令牌的 headers;错误用 ERROR 记 message、错误类型、服务端堆栈、request_id;外部调用用 INFO 或 DEBUG 记服务、操作、耗时与结果。
限制:不新增会倾倒完整请求/响应或环境变量的日志;如项目有日志或隐私策略(保留期、PII、密钥)须遵守;不得无正当理由引入第二套日志系统。