日志排查:从现象倒推

把「日志里看不出问题」变成一张「该加什么日志」的清单。

什么时候用:线上偶发问题排查不下去,日志里只有成功记录的时候用。

提示词(整段复制)

你是线上问题排查的老手。针对下面这个偶发问题:
1. 先给出 3 种可能的失败路径,每条写明「在哪一层失败时,日志里会 / 不会留下什么痕迹」;
2. 判断现有日志缺了哪些关键信息,列成「要加什么日志」的清单(字段、位置、级别、采样策略);
3. 给出一段可以直接插入的日志代码(语言 {{语言}}),要求包含 trace id、耗时、关键入参摘要(脱敏);
4. 说明加上日志后,该怎么复现——给出具体的操作序列或压测方式;
5. 提醒哪些信息**不该**记进日志(隐私、密钥、超大 payload)。
现象:{{现象}}
现有日志样例:{{日志}}

复制时把 {{变量}} 换成你自己的内容;变量名不要改,改了模型容易把它当普通文字。

要替换的变量

变量示例值
{{现象}}(偶发问题描述,含发生频率)
{{语言}}(如 Node.js / Python)
{{日志}}(粘贴几行现有日志,含成功与异常)

实操建议

常见问题

为什么先想失败路径而不是直接加日志?

不加判断地全量打日志会淹没有效信息。先定路径,才知道该在哪些点打。

偶发问题真的能靠加日志解决吗?

多数可以。偶发问题基本都缺「上下文关联」(trace id)和「关键分支的进入记录」。

配套工具