skywalking中后端collect采样率的设置

版本:7.0.0

描述

在默认情况下,SkyWalking会采集所有追踪的数据。但是如果系统比较复杂,采集的端点比较多的时候,可能存储压力比较大,这个时候我们可以修改配置,只存储部分的调用链路信息。比如:50%。
设置采样率的时候并不会影响相关指标的计算。服务,服务实例,端点,拓扑图相关指标的计算还是使用完整的数据计算的。

配置

具体配置在config/application.yml文件中receiver-trace模块。
默认配置10000,采样率精确到1/10000,即10000 * 1/10000 = 1 = 100%
假设我们设计采样50%,那么设置为5000,具体如下:

receiver-trace:
  selector: ${SW_RECEIVER_TRACE:default}
  default:
    sampleRate: ${SW_TRACE_SAMPLE_RATE:5000}

建议

后算实例可以设置不同的采样率,但是官方建议设置为同样的值。
假设:
实例A采样率 = 35%
实例B采样率 = 55%

Agent将所有的跟踪段都上报给后端,全局范围内 35% 的跟踪的所有跟踪段会保存在存储中。
但是,B实例还会有 20% 的跟踪信息,这些跟踪信息里面有一部分的跟踪段被发送 A 实例, 这部分不会持久化。最终导致跟踪段缺失。

集群模式下,各个实例的采样率建议设置一致,否则可能会导致数据丢失风险。采样率配置在/config/application.yml中,receiver-trace.Default.sampleRate

posted on 2020-11-24 13:46  luzhouxiaoshuai  阅读(4690)  评论(0编辑  收藏  举报

导航