实践背景
随着微服务架构的逐渐流行,在复杂且庞大的系统中准确地定位一个请求的完整生命周期,逐渐成为了研发人员面临的最大痛点之一。以研发自测过程为例,开发人员通常希望在发起 HTTP/RPC 测试请求后,能够以一个简单的方式获取整个测试请求的上下文信息。这其中通常包括相关的上下游链路、各个服务内部请求的方法堆栈,以及链路上打印的日志等数据,对于指标-链路-日志的一体化监控的需求已经迫在眉睫。
腾讯云应用性能监控(APM)作为本身包含指标-链路的全链路监控平台,已与 腾讯云日志服务(CLS) 联手打通,实现指标-链路-日志的一体化监控,在查看链路详情时关联查看所对应信息,完成从链路到日志的排查流程。
前提条件
说明:
为了保障您日志数据的可靠性以及更高效地使用日志服务,建议您使用 CLS 优化后的接口/Agent 上传结构化日志:
通过 API/SDK 上报,详情请参见 上传日志 中的 contents 部分。
通过 Agent 上报,详情请参见 使用 JSON 提取模式采集日志。
操作步骤
步骤1:将 TraceID 输出到日志
为了实现链路和日志的关联查询,您需要将 TraceID 输出到日志中,对于如下2种方式接入 APM 的应用,可以在不修改代码的情况,将 TraceID 自动注入到日志中:
对于通过其他方式接入 APM 的应用,请参考对应的接入文档,在代码中获取 TraceID,并在业务日志中输出 TraceID。
步骤2:配置 APM 应用与 CLS 主题的关联
步骤3:查询链路对应的业务日志
1. 登录 腾讯云可观测平台,进入应用性能监控 > 链路追踪页面。
2. 选择对应的业务系统,指定查询条件,查询链路调用,并单击 TraceID,即可进入链路详情页面。
3. 在 CLS日志标签页,可以查询该链路对应的业务日志。

