跳转至

Trace 配置

Trace 初始化配置

let traceConfig: FTTraceConfig = {
  enableNativeAutoTrace: true,
};
await FTReactNativeTrace.setConfig(traceConfig);
字段 类型 必须 说明
sampleRate number 否 采样率,取值范围 [0,1],0 表示不采集,1 表示全采集,默认值为 1
traceType enum TraceType 否 链路类型,默认 TraceType.ddTrace。支持 TraceType.ddTrace、TraceType.zipkinMulti、TraceType.zipkinSingle、TraceType.traceparent、TraceType.skywalking、TraceType.jaeger
enableLinkRUMData boolean 否 是否与 RUM 数据关联,默认 false
enableNativeAutoTrace boolean 否 是否开启原生网络自动追踪 iOS NSURLSession、Android OKhttp。由于 React Native 的网络请求在 iOS、Android 端是使用系统 API 实现的,开启后,所有 React Native 请求数据能够一并追踪

Tracer 网络链路追踪

SDK 初始化 Trace 配置 时可以开启自动网络链路追踪,也支持用户自定义采集。

使用方法

/**
 * 获取 trace HTTP 请求头数据。
 * @deprecated use getTraceHeaderFields() replace.
 */
getTraceHeader(key: String, url: String): Promise<object>;

/**
 * 获取 trace HTTP 请求头数据。
 */
getTraceHeaderFields(url: String, key?: String): Promise<object>;

使用示例

import { FTReactNativeTrace } from '@cloudcare/react-native-mobile';
async function getHttp(url: string) {
  const key = Utils.getUUID();
  const traceHeader = await FTReactNativeTrace.getTraceHeaderFields(url);
  const fetchOptions = {
    method: 'GET',
    headers: Object.assign(
      {
        Accept: 'application/json',
        'Content-Type': 'application/json',
      },
      traceHeader,
    ),
  };
  fetch(url, fetchOptions);
}

文档评价

文档内容是否对您有帮助?