链路与日志关联分析

最近更新时间:2024-12-27 15:44:12

我的收藏

实践背景

随着微服务架构的逐渐流行,在复杂且庞大的系统中准确地定位一个请求的完整生命周期,逐渐成为了研发人员面临的最大痛点之一。以研发自测过程为例,开发人员通常希望在发起 HTTP/RPC 测试请求后,能够以一个简单的方式获取整个测试请求的上下文信息。这其中通常包括相关的上下游链路、各个服务内部请求的方法堆栈,以及链路上打印的日志等数据,对于指标-链路-日志的一体化监控的需求已经迫在眉睫。
腾讯云应用性能监控(APM)作为本身包含指标-链路的全链路监控平台,已与 腾讯云日志服务(CLS) 联手打通,实现指标-链路-日志的一体化监控,在查看链路详情时关联查看所对应信息,完成从链路到日志的排查流程。

前提条件

请确保应用已经接入应用性能监控(APM),并参考 CLS 入门指南 将业务日志上报到腾讯云日志服务(CLS)。
说明:
为了保障您日志数据的可靠性以及更高效地使用日志服务,建议您使用 CLS 优化后的接口/Agent 上传结构化日志:
通过 API/SDK 上报,详情请参见 上传日志 中的 contents 部分。
通过 Agent 上报,详情请参见 使用 JSON 提取模式采集日志

操作步骤

步骤1:将 TraceID 输出到日志

为了实现链路和日志的关联查询,您需要将 TraceID 输出到日志中,对于如下2种方式接入 APM 的应用,可以在不修改代码的情况,将 TraceID 自动注入到日志中:
对于通过其他方式接入 APM 的应用,请参考对应的接入文档,在代码中获取 TraceID,并在业务日志中输出 TraceID。

步骤2:配置 APM 应用与 CLS 主题的关联

请参考 在系统配置页面关联日志,配置 APM 应用与 CLS 主题的关联。

步骤3:查询链路对应的业务日志

1. 登录 腾讯云可观测平台,进入应用性能监控 > 链路追踪页面。
2. 选择对应的业务系统,指定查询条件,查询链路调用,并单击 TraceID,即可进入链路详情页面。
3. CLS日志标签页,可以查询该链路对应的业务日志。