跳到主要内容
版本:Draft ✍️

RUM 与 APM 关联数据采集

img

概述

APM 与 RUM 的集成允许您将 Web 应用程序中的请求关联到相应的后端链路,提供更完整的前后端数据关联视角。

提示

目前仅支持 Web 应用,其他类型应用的支持正在开发中。

配置 RUM

1. RUM 应用中引入的代码块中,增加配置项 allowedTracingUrls

其他配置项说明以参考文档 Web 应用数据采集

  • allowedTracingUrls : 允许 APM 跟踪的 URL 列表,支持正则表达式。
    • match : 填写前端应用访问后端服务的域名或者 IP+端口,匹配的 URL 正则表达式。
    • propagatorTypes : 支持的传播器类型,目前支持 tracecontext(W3C 跟踪上下文 traceparent )
<script src="/lighthouse-rum.js"></script> // 使用时文件路径换成实际路径
<script>
LIGHT_RUM.init({
applicationId: 'light-ui_82', //应用id
site: '192.168.2.80:8085', //数据上报地址,应用可访问的域名或 ip +端口
service: 'light-ui_82', //产生应用数据的服务名称,用于数据关联
env: '82', //应用的环境,例如 dev/test
version: '1.9.0', //应用的版本,例如 1.0.0/3.2.1
sessionSampleRate: 100, //用户会话采样率,可填范围 0-100
sessionReplaySampleRate: 100, //会话重放采样率,可填范围 0-100
trackUserInteractions: true, //是否记录用户动作,选填 true 或 false
trackResources: true, //是否记录页面资源性能数据,填 true 或 false
trackLongTasks: true, //是否记录页面长任务性能数据,填 true 或 false
defaultPrivacyLevel: 'mask-user-input',
allowedTracingUrls: [
{ match: "http://192.168.2.80", propagatorTypes: ["tracecontext"]}
],
});
</script>

2. 重新编译,使配置生效

W3C 跟踪上下文 ( traceparent )

RUM 会在每次发请求给后端时,在请求头中添加 traceparent 字段,APM 会根据这些 traceparent 字段将前端请求与后端跟踪关联起来。

traceparent 字段格式:
00-00000000000000008448eb211c80319c-b7ad6b7169203331s-01
00: 版本号,固定为 00
00000000000000008448eb211c80319c: trace_id
b7ad6b7169203331s: span_id
01: 标志位,固定为 01