分布式追踪从一条 trace 开始
单体应用里,一次报错通常能在一份日志里看完。服务拆开之后,同一个请求会留下许多碎片:网关、鉴权、业务服务、缓存、数据库,各自都觉得自己的日志很清楚。
trace 解决的是路径问题
分布式追踪把一次请求串成一条 trace,每个服务或操作是一条 span。你看到的不再是“某个服务报了 500”,而是“这个请求在缓存层等了 800ms,随后在数据库重试了两次,最后超时”。
trace_id: 4bf92f3577b34da6a3ce929d0e0e4736spans: - name: gateway duration_ms: 12 - name: post-service duration_ms: 803 - name: postgres duration_ms: 790采样与成本
全量采集很贵,采样又会漏掉罕见错误。常见做法是头部采样加错误全留,或者对慢请求提高采样率。关键是让 trace_id 能出现在日志和错误响应里,这样用户报障时才有线索。
追踪工具本身不会让系统变快,它只是把“感觉慢”变成可讨论的路径。先有可观测性,才谈得上优化。


评论
登录后可以评论,也可以回复某条评论。
还没有评论
说说你的看法,或者指出文中没有说清的地方。