您可以在自定义配置页签上调整探针功能开关、采样策略等常用设置。
如果您需要使用API方式调整,请参见SaveTraceAppConfig。
前提条件
已为应用安装探针,具体操作,请参见应用监控接入概述。
功能入口
登录ARMS控制台,在左侧导航栏选择 。
在应用列表页面顶部选择目标地域,然后单击目标应用名称。
说明语言列的图标含义如下:
:接入应用监控的Java应用。
:接入应用监控的Golang应用。
-:接入可观测链路 OpenTelemetry 版的应用。
在左侧导航栏中单击应用设置,并在右侧页面单击自定义配置页签。
设置自定义配置参数,设置完毕后,在页面底部单击保存。
调用链采样设置
在调用链采样设置区域,可以打开或关闭调用链采集开关。
采样率设置
ARMS专家版
在采样率设置区域,可以为调用链设置采样策略和采样接口名称。更多详细,请参见调用链采样模式选择(3.2.8以下探针版本)。
固定采样率:在采样率设置字段输入百分比的数字部分即可,例如输入10代表采样10%。
自适应采样:自定义需要全采样的接口前缀或后缀。
调用链采样率优先级高于限流阈值。
ARMS基础版
ARMS基础版支持设置客户端采样策略,并按照采集数据行数进行计费。ARMS默认免费为您账号下所有接口的每个探针每分钟采集一条调用链。除此之外,您还可以单击添加客户端采样策略,添加自定义的采样策略。
设置项 | 说明 |
策略名称 | 自定义采样策略名称。 |
采样类型和采样值 |
|
适用接口 | 设置采样策略生效的接口范围,可选择每个接口或指定接口并输入指定的接口名称。 说明 目前每个采样策略在选择指定接口时,仅支持输入一个接口名。若需对多个接口进行调用链采样,则需设置多个采样策略。 |
完成采样策略设置后,您可以在控制台选择是否开启该策略。多个采样策略会同时生效,但存在优先级如下:默认采样(免费)> 单接口流量限额 > 单接口固定比例采样 > 全部接口流量限额 > 全部接口固定比例采样。您也可以编辑已添加的采样策略,或删除不需要的采样策略。
Agent(探针)开关和日志级别
在Agent开关配置区域,可以打开或关闭探针总开关以及各插件开关,并配置日志级别。
探针总开关和日志级别的修改即时生效,无需重启应用。如果关闭探针总开关,则系统将无法监控您的应用,请谨慎操作。要使对各插件开关的修改生效,必须手动重启应用。
阈值设置
在阈值设置区域,可以设置慢SQL查询阈值、接口响应时间阈值和限流阈值。
调用链采样率优先级高于限流阈值。
高级设置
在高级设置区域,可以设置需过滤的接口、方法堆栈最大长度等。
无效接口调用过滤:输入不需要查看调用情况的接口,从而将其从接口调用页面隐去。
方法堆栈最大长度:默认为128条,最大值为400条。
同类异常堆栈区分深度:同类型异常,用于作为不同异常区分的堆栈深度,一般设置为第一个差异调用的深度。
采集SQL最大长度:默认为1024个字符,最小值为256,最大值为4096。
采集SQL绑定值:捕获PrepareStatement参数绑定的变量值,无需重启应用即可生效,当前仅支持向PrepareStatement中设置SQL变量值的场景。
原始SQL:仅对SQL截断,不做额外处理。
异常过滤:此处输入的异常不会显示在应用详情和异常分析页面的图表中。
错误数过滤:默认情况下,大于400的状态码会计入错误数,您可以自定义大于400但不计入的HTTP状态码。
调用链新格式:采用支持调用链时间排序的新存储格式(默认打开)。
调用链压缩:是否将重复调用(比如for循环)简化,无需重启应用即生效。
请求入参最大长度:默认为512字符,支持的最大长度为2048字符。
分位数统计:是否开启分位数统计功能。
说明分位数:指将一个随机变量的概率分布范围分为几个等份的数值点,常用的有中位数(即二分位数)、四分位数、百分位数等。
RabbitMQ自定义消费者:通过设置自定义消费者的类名或者包含匿名内部消费者的类名,可以看到该消费者的调用链路。多个消费者以半角逗号(,)分隔。
Kafka自定义消费方法:通过自定义消费方法,可以在通过Kafka原生SDK消费消息的场景下看到链路以及指标数据。
kafka发送消息自动透传上下文:发送时自动往Kafka消息中添加若干个Header用以将发送链路以及消费链路关联,注意仅到kafka版本为v0.11.0及以上可打开,否则会导致发送消息异常。
线程池、连接池监控:支持Tomcat/Dubbo/HSF等框架的线程池、连接池指标监控。该设置需重启应用后生效。
自动透传异步:当通过线程池提交异步任务时,自动透传异步上下文。
异步透传扫描包名:添加异步透传扫描包实现异步任务监控。异步透传扫描包中的Runnable、Callable和Supplier接口在创建新对象时会自动捕获当前线程调用链的上下文,并在异步线程中执行时使用该调用链上下文,完成串联。探针版本必须为v2.7.1.3及以上。
请求中返回TraceId:仅针对HTTP类型的请求,在Response Header中返回字段为
eagleeye-traceid
。内存优化开关:当应用维度比较发散的场景下,探针指标预聚合功能可能导致部分对象进入老年代,造成老年代内存缓慢增长,打开改开关可缓解此现象。探针版本必须为v2.9.0及以上。
线程设置
在线程设置区域,可以打开或关闭线程分析总控开关、线程分析方法栈开关,并设置慢调用监听触发阈值。
仅应用监控专家版支持该功能。
服务调用耗时超过慢调用监听触发阈值(默认值为2000毫秒)时才会启动监听,并一直持续到该次调用结束或超过15秒。建议将此阈值设为调用耗时的第99百分位数。假设有100次调用,则按耗时从小到大排序,排在第99位的耗时就是第99百分位数。
应用日志关联配置
在应用日志关联配置区域,可以设置应用关联的日志源信息。更多信息,请参见日志分析。
仅应用监控专家版支持该功能。
URL收敛规则
在URL收敛设置区域,可以打开或关闭收敛功能的开关,并设置收敛阈值、收敛规则。URL收敛是指将具有相似性的一系列URL作为一个单独的个体展示,例如将前半部分都为/service/demo/的一系列URL集中展示。收敛阈值是指要进行URL收敛的最低数量条件,例如当阈值为100时,则符合规则正则表达式的URL达到100时才会对它们进行收敛。
设置Arthas监控
在Arthas监控区域,可以打开或关闭Arthas诊断功能,并设置生效IP。更多信息,请参见Arthas诊断。
仅应用监控专家版支持该功能。
持续剖析
在持续剖析区域,可以打开或关闭总开关、CPU热点、内存热点、代码热点功能,并设置生效IP或网段。更多信息,请参见接入持续剖析功能。
调用链透传协议设置
在调用链透传协议设置区域,您可以根据自己的需求选择使用的Trace协议,ARMS支持的Trace协议请参见ARMS支持Tracing协议。
默认情况下,当一次调用到来时,ARMS探针会按照EagleEye、OpenTelemetry、SkyWalking、Jaeger、Zipkin的顺序依次探测是否存在该协议约定的请求头,如果探测到某个协议存在,则按照该协议约定恢复Trace上下文,后续调用下游时,也按照该协议约定往请求中塞入相关Header。当上述检测都失败时,默认使用EagleEye协议。
您可以在该页面选择任一协议作为优先协议。选择并保存后,ARMS会优先探测是否存在该协议约定的请求头。例如,按照如下配置,当一次调用到来时,ARMS探针将会改为按照Jaeger、EagleEye、OpenTelemetry、SkyWalking、Zipkin的顺序依次探测是否存在协议约定上下文。
您也可以选择强制使用某一种协议。例如,按照如下配置,当一次调用到来时,ARMS探针只会探测是否存在Jaeger协议约定的请求头,如果不存在,不会依次检测其他协议,而是重新生成新的Trace上下文。
信息脱敏
在信息脱敏区域,通过设置脱敏规则,探针将对JVM系统参数、K8s Yaml、方法入参、Arthas环境变量和系统变量等内容在采集时就进行脱敏处理。脱敏规则中各元素通过英文半角逗号分隔,每一个元素代表一个不区分大小写的正则表达式,以password
为例,脱敏规则等同于正则表达式.*password.*
。
探针在采集数据时会对数据的key按照对应的表达式进行过滤,如果满足条件,该key会被认为包含敏感数据进行脱敏处理。如下图所示,当脱敏规则为licenseKey时,其对-Darms.licenseKey
为key的信息进行了脱敏处理。
将配置复制到其他应用
如果您需要为其他应用同步相同配置,可以将对应配置复制到其他应用上。
将单个配置复制到其他应用
在对应配置区域单击批量复制到其他应用。
在弹出的对话框中选择生效的应用,然后单击确定。
将所有配置复制到其他应用
在页面底部单击批量复制到其他应用。
在弹出的对话框中选择生效的应用,然后单击确定。
全局默认配置
您可以将当前配置保存为全局默认配置,在之后创建新应用时将会默认使用当前配置。
在页面底部单击保存当前应用设置为全局默认配置。
在弹出的对话框中单击确认。