首页/网络/网络排障速查/日志与抓包对齐:把应用现象落到报文

日志与抓包对齐:把应用现象落到报文

最终定位要靠『日志事件 ↔ 报文』对齐:统一时间基准、按五元组与请求 ID 过滤抓包,把错误日志对应的具体报文找出来。

网络排障速查网络更新于 2026-10-12

对齐流程

对齐流程
# 1) 记录故障时间点(精确到秒)与客户端 IP:
grep '2026-10-12 10:30' /var/log/app/error.log | tail -20
# 2) 按五元组过滤该时段抓包:
tcpdump -nn -r /tmp/cap.pcap 'host 203.0.113.7 and tcp port 443' -tttt | head -40
# 3) 需要请求级关联时,让日志带上 request_id 并在抓包中检索 HTTP 头:
tshark -r /tmp/cap.pcap -Y 'http contains "req-9f3a"' -T fields -e frame.number -e ip.src -e http.request.uri
前提1日志与抓包机器时钟同步(NTP,偏差 <1s)
前提2知道五元组或请求 ID,才能把海量报文缩到一条流
产出错误日志 ↔ 具体帧号,可直接读取该帧上下文
增强应用日志输出 request_id/上游耗时字段,事后关联效率提升一个量级
抓包与分析常常是事后行为:把『抓包窗口』与『日志时间窗』一起留存(含 pcap、access/error log 片段),复现困难的问题也能复盘。

易错点

  • 时钟不同步时强行对齐日志与抓包,得出错误的先后顺序
  • 抓包与日志留存时间窗不一致,事后无法交叉验证

数据来源与参考

  • Wireshark User's Guide:按时间与字段过滤
  • RFC 5905:NTP 时间同步

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌