跳转至

Trace 配置

Trace 初始化配置

let traceConfig: FTTraceConfig = {
  enableNativeAutoTrace: true,
};
await FTReactNativeTrace.setConfig(traceConfig);
字段 类型 必须 说明
sampleRate number 采样率,取值范围 [0,1],0 表示不采集,1 表示全采集,默认值为 1
traceType enum TraceType 链路类型,默认 TraceType.ddTrace。支持 TraceType.ddTraceTraceType.zipkinMultiTraceType.zipkinSingleTraceType.traceparentTraceType.skywalkingTraceType.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);
}

文档评价

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