一个请求穿过五六个服务,慢在哪?靠 trace-id 把各段日志串成一条时间线。

操作步骤

# 在请求头传递 trace-id
trace-id: 7f3a9c2e1b
# 各服务日志都带上它,串联一次调用
logger.info("handle order", extra={"trace_id": req.trace_id})

要点速览

  • 入口生成 trace-id,随上下文透传到底层服务。
  • 每段耗时打点,瓶颈一眼可见。
  • 接 OpenTelemetry 等标准,跨语言通用。
链路追踪把「一次慢请求」拆成「每段花多少」,定位不再靠猜。