Skip to the content.

链路追踪(Tracing)其实很简单——链路功能进阶指南

作者:夏明(涯海)
创作日期:2022-10-24
专栏地址:【稳定大于一切】

经过前面两章的学习,小玉已经熟练掌握分布式链路追踪的基础用法,比如回溯链路请求轨迹,定位耗时瓶颈点;配置核心接口黄金三指标告警,第一时间发现流量异常;大促前梳理应用上下游关键依赖,联系相关方协同备战等等。随着深入使用链路追踪技术,小玉在问题发现与诊断方面的能力大幅提升,她负责的订单中心应用稳定性也明显好转,得到了上级主管的多次褒奖。

不过,小玉并没有洋洋得意,因为她发现了许多新的棘手问题:比如接口偶发性超时,调用链只能看到超时接口名称,看不到内部方法,无法定位根因,也难以复现,怎么办?比如接口调用成功,但是业务状态异常,导致结果不符合预期,如何排查?比如大促压测时或发布变更后,发现 CPU 水位非常高,如何分析应用性能瓶颈点,针对性优化?比如同一份代码,本地调试都正常,但是发布到线上环境就报错,如何定位代码行为不一致的原因?诸如此类的难题,困扰着小玉,它们好像不属于链路追踪的范畴,却又与链路追踪有着千丝万缕的联系,让小玉不知该如何下手。

小明听了小玉的烦恼,不仅莞尔一笑,说到:链路追踪是可观测不可分割的一部分,我们不应该人为的划分边界,而是要打破数据孤岛,紧密结合其他可观测技术,以提高系统稳定性为目标,最大化的发挥链路追踪的关联价值。

本小节通过对经典案例的解读,大家将掌握链路追踪与其他可观测技术结合应用的窍门,打破对链路追踪固有的认知,深入理解链路追踪在可观测领域的关联价值。

【应用日志关联】一次订单支付失败行为的全息排查

image

【慢调用方法栈自动剖析】偶发性慢调用,如何定位导致问题的那一行代码?

image

image

image

【CPU 利用率高“三步排查法”】大促前夕压测发现 CPU 水位非常高,如何分析应用性能瓶颈点,针对性优化?

【内存异常“三步排查法”】应用频繁 FGC 或是内存崩溃,如何定位根因,保障服务可用性?

【白屏化在线诊断】程序运行不符合预期,本地调试成功的代码,发布到线上就报错,怎么办?

【探索式链路分析与监控】1秒战役,如何常态化治理入口请求慢响应问题?

【智能根因定位】如何让新手具备“专家级”诊断能力,快速定位经典问题根因?

小结

链路追踪(Trace)最大的价值在于“关联”,无论是从数据层面关联应用日志(Logs)、关键事件(Events)、性能指标(Metrics)或诊断工具(Profiling),还是从系统层面关联用户终端、网关、应用、中间件、容器与基础设施,链路追踪最大的价值不在于自身,而在于关联性的场景化呈现,让我们一起来继续挖掘更多更有价值、也更有意思的用法吧!

推荐阅读

《链路追踪(Tracing)其实很简单》系列文章

推荐产品

推荐社区

【稳定大于一切】打造国内稳定性领域知识库,让无法解决的问题少一点点,让世界的确定性多一点点。

image