如果应用采集的数据比较多,将这些数据都发送给服务器端务必会给服务器端造成很大的压力,这时可以通过采样(也就是将收集的数据按设置的比例提交到服务器端,比如采样比为0.5,那边只会将一半的数据提交到服务器端)
设置步骤如下:
在cat的配置->全局高就配置->客户端路由
该配置项是直接操作一个xml文档,添加对应domain元素的sample属性,如下所示
1 2 3 4 5 6 |
<?xml version="1.0" encoding="utf-8"?> <router-config backup-server="192.168.14.140" backup-server-port="2280"> <default-server id="192.168.14.140" weight="1.0" port="2280" enable="true"/> <!--表示将test-web这个应用的采样率设置为0.5,默认为1--> <domain id="test-web" sample="0.5"/> </router-config> |
注意,从源码看,对含有error信息,heartbeat,Metric这三种信息的消息不受采样率设置的影响,永远是100%提交到服务器端,参考com.dianping.cat.message.spi.MessageTree.setSample 方法的调用
Posted in: CAT
Comments are closed.