- 文档首页
应用性能监控全链路版
用户指南
应用性能监控
最佳实践
APMPlus 端到端全链路追踪
APMPlus 端到端全链路追踪
应用性能监控全链路版面向企业级用户提供覆盖 App、Web、小程序等客户端与 Java、Go、Python 等服务端的端到端全链路追踪解决方案,通过分布式链路追踪技术实现用户行为、网络请求、服务调用、数据库/消息队列等依赖组件的全流程可视化与性能分析,帮助企业快速定位异常根因、优化系统性能、提升用户体验,并支持数据驱动的业务决策。
应用性能监控全链路版已经完整支持从用户终端到 AI&中间件的端到端全链路打通,完整链路包括:用户终端(例如:Android/iOS/Web/小程序) -> 接入网关(例如:API 网关/Ingress/Nginx 等) -> 后端服务(例如:Java/Go/Python 等) -> AI&中间件(例如:大模型、数据库、缓存、消息队列等)。
使用端到端全链路追踪解决方案前,确保客户端 SDK 版本满足以下要求。
根据实际情况,选择合适的客户端类型并通过 SDK 方式将应用接入 APMPlus 客户端监控。以下提供 4 种客户端应用的接入方式:
Android 监控
iOS 监控
WebPro 监控
小程序 Pro 监控
- 添加以下示例代码,启动 SDK 并开启数据采集和全链路监控。
ApmInsightInitConfig.Builder builder = ApmInsightInitConfig.builder();
builder.netMonitor(true);
builder.enableNetTrace(true);
ApmInsight.getInstance().start(builder.build());
- 应用接入 Android SDK 后,可参考 验证数据上报 中的说明验证数据上报。
- 添加以下示例代码,启动 SDK 并开启数据采集和全链路监控。
#import <RangersAPMConfig+NetworkPro.h>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
RangersAPMConfig *apmConfig = [RangersAPMConfig configWithAppID:@"{{app_id}}" appToken:@"{{app_token}}"];
apmConfig.channel = @"App Store";
apmConfig.enableTracing = YES;
[RangersAPM startWithConfig:apmConfig];
- 应用接入 iOS 后,可参考 验证数据上报 中的说明验证数据上报。
- 添加以下示例代码,启动 SDK 并开启数据采集和全链路监控。
说明
- 若请求由 fetch API 发出,则需要在 fetch 插件上配置;若请求由 xhr API 发出,则需要在 ajax 插件上配置。
- 开启 Trace 打通将为请求添加请求头,因此,默认不开启 Trace。
- 必须同时配置 sampleRate 和 origins。
import client from '@apmplus/web'
- 添加以下示例代码,启动 SDK 并开启数据采集。
说明
- 开启 Trace 打通将为请求添加请求头,因此,默认不开启 Trace。
- 必须同时配置 sampleRate 和 origins。
const apm = require('@apmplus/mini-program')
const client = apm.createMiniProgramClient([apm.WxAdapter])
端到端全链路追踪依赖服务端应用正确接入OpenTelemetry SDK,从而识别 App、Web 或小程序端的 HTTP 请求,并将相关 Header 字段转换为链路属性上报到 APMPlus 服务端。不同语言的接入方式不同,以下提供 4 种语言的接入方式,可根据服务端应用使用的语言选择合适的接入方式。
Java 语言
Go 语言
Python 语言
Nodejs 语言
- 通过 OpenTelemetry 接入 Java 应用,详细说明参见:Java 应用接入。
- 若通过 VKE 集群组件中心白屏安装 apmplus-opentelemetry-collector 组件方式,默认支持自动注入,无需修改配置。
- 若通过社区提供的 SDK 接入或者 Agent 自主接入,需要增加如下环境变量:
OTEL_JAVA_EXPERIMENTAL_SPAN_ATTRIBUTES_COPY_FROM_BAGGAGE_INCLUDE:apmplus.app_id,apmplus.origin,apmplus.client_domain
- 通过 OpenTelemetry 接入 Go 应用,详细说明参见:Go 应用接入。
go get "go.opentelemetry.io/contrib/processors/baggagecopy"
- 初始化 TracerProvider 时,增加 bagggagecopy 的 SpanProcessor。
tp := trace.NewTracerProvider(
trace.WithSpanProcessor(baggagecopy.NewSpanProcessor(nil)),
- 安装 opentelemetry-processor-baggage。
pip install opentelemetry-processor-baggage
from opentelemetry.processor.baggage import BaggageSpanProcessor, ALLOW_ALL_BAGGAGE_KEYS
from opentelemetry import trace
trace.get_tracer_provider().add_span_processor(BaggageSpanProcessor(ALLOW_ALL_BAGGAGE_KEYS))
- 安装 opentelemetry/baggage-span-processor。
- 配置 BaggageSpanProcessor。
import { NodeSDK, tracing } from '@opentelemetry/sdk-node';
import { ALLOW_ALL_BAGGAGE_KEYS, BaggageSpanProcessor } from '@opentelemetry/baggage-span-processor';
const spanProcessors = [
new tracing.SimpleSpanProcessor(
new tracing.ConsoleSpanExporter()),
new BaggageSpanProcessor(ALLOW_ALL_BAGGAGE_KEYS)];
const sdk = new NodeSDK({serviceName: "example-service",spanProcessors});
App 端到端
Web 端到端
小程序 Pro 端到端
Web 应用和服务端应用正确接入后,从 Web 端发起的请求将发送到服务端应用,可前往应用性能监控 Trace 详情页查看 Web 请求的 Span,而且,支持跳转到客户端监控的 WebPro 页面查看更多信息。
- 搜索目标服务,单击服务名称,前往目标服务的管理页面。
- 在左侧导航栏选择 Trace 分析,前往 Trace 分析页面。
- 根据实际情况,通过时间、标签、Span 属性、Trace ID、Span 类型、服务名等条件筛选目标 Trace,单击目标 TraceID,前往 单链路详情 页面。
- 单击目标 Web 请求中的 跳转到 WebPro 查看 按钮,支持跳转到客户端监控的 WebPro 页面查看更多信息。
同时,前往客户端监控的 Webpro 页面,支持跳转到应用性能监控的 Trace 详情页。
- 单击目标应用服务名称,并在应用管理页面单击 WebPro 端监控 中的 使用服务,前往 WebPro 端监控管理页面。
- 在左侧导航栏选择 全部功能 > 数据探索,前往数据探索页面。
- 选择维度并切换到 Requests 页签,单击目标请求名称,查看请求相关详细信息。
- 单击 Trace 中的 rum_trace_id,可跳转到应用性能监控的 Trace 详情页,查看更多信息。
小程序 Pro 应用和服务端应用正确接入后,从小程序 Pro 端发起的请求将发送到服务端应用,可前往应用性能监控 Trace 详情页查看 Web 请求的 Span,而且,支持跳转到客户端监控的小程序 Pro 页面查看更多信息。
- 搜索目标服务,单击服务名称,前往目标服务的管理页面。
- 在左侧导航栏选择 Trace 分析,前往 Trace 分析页面。
- 根据实际情况,通过时间、标签、Span 属性、Trace ID、Span 类型、服务名等条件筛选目标 Trace,单击目标 TraceID,前往 单链路详情 页面。
- 单击目标小程序请求中的 跳转到小程序 Pro 查看 按钮,支持跳转到客户端监控的小程序 Pro 页面查看更多信息。
同时,前往客户端监控的小程序 Pro 页面,支持跳转到应用性能监控的 Trace 详情页。
- 单击目标应用服务名称,并在应用管理页面单击 小程序 Pro 监控 中的 使用服务,前往 WebPro 端监控管理页面。
- 在左侧导航栏选择 全部功能 > 数据探索,前往数据探索页面。
- 选择维度并切换到 Http 页签,单击目标请求名称,查看请求相关详细信息。
- 单击 Trace 中的 TraceID,可跳转到应用性能监控的 Trace 详情页,查看更多信息。
最近更新时间:2026.02.10 19:56:32