Trace 配置¶
Trace 初始化配置¶
FTUnityBridge.InitTraceConfig(new TraceConfig
{
sampleRate = 0.9f,
traceType = TraceType.DDTrace,
enableNativeAutoTrace = true,
enableLinkRumData = true
});
| 字段 | 类型 | 必须 | 说明 |
|---|---|---|---|
| sampleRate | float | 否 | 采样率,取值范围 [0,1],0 表示不采集,1 表示全采集,默认值为 1 |
| traceType | string | 否 | 链路类型:ddTrace(默认)、zipkinMultiHeader、zipkinSingleHeader、traceparent、skywalking、jaeger |
| enableLinkRUMData | boolean | 否 | 是否与 RUM 数据关联,默认 false |
| enableNativeAutoTrace | boolean | 否 | 是否开启原生网络自动追踪 iOS NSURLSession、Android OKHttp,默认 false,Android 云打包不支持。iOS 端开启后,系统 API 发起的网络请求可以自动追踪,此时请屏蔽 iOS 端手动链路追踪,以防止链路与 RUM 数据关联错误 |
Tracer 网络链路追踪¶
链路通过生成 Trace Header,然后通过将 Header 添加到 HTTP 请求头上来实现链路功能。
使用方法¶
/// <summary>
/// 获取链路 Id
/// </summary>
/// <param name="url">url 地址</param>
/// <returns>json 字符</returns>
public static async Task<string> GetTraceHeaderWithUrl(string url)
/// <summary>
/// 获取链路
/// </summary>
/// <param name="resourceId">资源 Id</param>
/// <param name="url">url 地址</param>
/// <returns>json 字符</returns>
public static async Task<string> GetTraceHeader(string resourceId, string url)