把报错日志转成排查步骤
日志堆栈长、服务链路多,新人看不懂从哪下手,老手也常在无关字段上浪费20分钟
有人这样说「这报错日志堆得跟山一样,我刚看两行就头大了,得赶紧理清思路。」
能替你选的都选好了。不想动,直接点下面「交给 AI 办」,点一下就开始做;想改,就点一下要的那个。
已替你选好想改就点一下
更多选项(一般不用动)
只有你知道的不填就先空着,成品里留【待填】
还想怎么改可以不选
开工前请确认
高级选项一般不用动 · 这件事通常 1 分钟左右做好
示例成品全文按上面这组示例选项真跑出来的
别从头看日志。按这5步过滤 payment-gateway 的 FeignException:
- 抓 TraceID/RequestID 首次出现位置
搜:grep -nE "TraceID|traceId|X-Request-Id|requestId" payment-gateway*.log | head -n 20
记下:值、时间、所在类。
判断:
- 首次出现是网关入口 Filter/Controller → 请求已进 payment-gateway,问题大概率在下游。
- 首次出现只在 Feign 异常栈 → 入口没打日志或上游没传,先查上游。
- 按 TraceID 拉上下游调用链
用这个 TraceID 全局搜,按时间排序。
只保留:上游服务 → payment-gateway → 下游服务。
找第一个出现非 2xx、FeignException、timeout 的位置。
- 提取 Feign 请求/响应片段
在异常前后 20 行内搜:method、url、status、headers、body、request、response。
记录:下游服务名、URL、HTTP 方法、状态码、耗时、脱敏后的 Header/Body 片段。
Body 没打印就写明“未打印 Body”。
- 定根因类型
FeignException 对号入座:
- connect timeout / ServiceUnavailable → 下游不可达
- 500 InternalServerError → 下游业务报错,拿同一 TraceID 去下游查
- 429 / RetryableException / read timeout → 限流或响应慢
结论格式:payment-gateway 调 <下游> 失败,状态码 <X>,耗时 <Y ms>,指向 <下游/网络/配置>。
- 故障报告直接写
[时间] TraceID=<值> 请求进入 payment-gateway;
[调用链] 上游 → payment-gateway → <下游>;
[失败点] Feign 调 <下游> 返回 <状态码>,异常摘要:<...>;
[请求片段] <脱敏 Header/Body>;
[根因] <步骤4结论>;
[复核] TraceID 首次出现位置为 <入口/Feign栈>,补日志/告警建议:<...>。