You need to enable JavaScript to run this app.
导航

全链路监控

最近更新时间2023.12.22 14:10:08

首次发布时间2022.07.22 17:52:57

系统为了接收并处理一个请求,需要多个网络设备和应用协同工作,单个请求会引发不同应用之间产生一串顺序性的调用关系。一个完整的请求链路就是一个Trace,TraceId将整条链路的各个节点进行关联。

客户端与APMPlus服务端打通全链路

APP监控构建一套完整的从APP端到后端的应用系统端到端监控体系,实现问题的快速发现与定位。通过TraceId关联服务端的监控数据,您可以观察APP网络请求调用的完整链路流程。

前提条件

操作步骤

  1. 登录应用性能监控全链路版控制台
  2. 单击目标应用下的App端监控
  3. 在控制台左上角选择全部功能 > HTTP
  4. 网络概览页面的左侧区域选择分析的指标,在右侧区域选择分析的维度,然后单击网络详情
    图片
  5. 在日志检索页面的详细信息区域,单击全链路Trace下方的链接。
    图片
  6. 进入单链路查询页面,在服务端查看更多信息。
    图片
    • Trace详情:查看总耗时的分布。
      • 单击app请求,查看请求的详细信息。
        图片
    • Trace完整日志:查看详细的日志信息。

客户端与自建服务端打通全链路

APMPlus不仅支持客户端与APMPlus的服务端监控打通来实现全链路监控,还支持通过设置您自己的TraceId和业务的服务端监控打通,实现全链路监控。

操作步骤

  1. 添加以下代码,在初始化SDK时设置TraceId的key,开启全链路监控。

    • Android客户端接入代码

      ApmInsightInitConfig.Builder builder = ApmInsightInitConfig.builder();
      builder.setNetTraceId("xxx");//开启全链路监控,网络监控会从业务网络请求response的header里,获取key为xxx的值,即业务自己的traceid,并上报后在平台展示,业务可以通过traceid去自己的后端监控查询具体链路。
      ApmInsight.getInstance().init(context, builder.build());
      
    • iOS客户端接入代码

      #import <RangersAPM+NetworkPro.h>
      [RangersAPM setTraceIDKey:@"trace_id_key"];
      

    开启全链路监控后,APMPlus SDK的网络监控会从业务网络请求response的header里获取key的值,即业务自己的TraceId,并随网络监控数据上报。

  2. 在APMPlus控制台的网络监控页面获取TraceId。

  3. 在服务端监控系统,查询当前网络请求在服务端的链路和耗时。