您可以在自定义配置页签上调整探针功能开关、采样策略等常用设置。
如果您需要使用API方式调整,请参见SaveTraceAppConfig。
前提条件
ARMS应用监控面向已开通新版计费的用户提供全新的监控详情页面,新版计费详情,请参见产品计费(新版)。
对于未开通新版计费的用户,如需查看新版监控详情页面,可在应用列表页面单击切换新版。
已为应用安装探针,具体操作,请参见应用监控接入概述。
功能入口
登录ARMS控制台,在左侧导航栏选择 。
在应用列表页面顶部选择目标地域,然后单击目标应用名称。
说明语言列的图标含义如下:
:接入应用监控的Java应用。
:接入应用监控的Golang应用。
:接入应用监控的Python应用。
-:接入可观测链路 OpenTelemetry 版的应用。
在上方导航栏选择
。设置自定义配置参数,设置完成后,单击保存。
采样设置
在采样设置区域,可以为调用链设置采样策略和采样接口名称。更多详细,请参见调用链采样模式选择(3.2.8以下探针版本)。
探针开关设置
在探针开关设置区域,可以控制应用监控的启停并调整各插件开关。
应用监控的启停修改即时生效,无需重启应用。如果暂停应用监控,则系统将无法监控您的应用,请谨慎操作。要使对各插件开关的修改生效,必须手动重启应用。
线程分析设置
在线程分析设置区域,可以打开或关闭线程分析总控开关、定期保存本地方法栈信息开关,并设置高耗时调用阈值。
服务调用耗时超过慢调用监听触发阈值(默认值为2000毫秒)时才会启动监听,并一直持续到该次调用结束或超过15秒。建议将此阈值设为调用耗时的第99百分位数。假设有100次调用,则按耗时从小到大排序,排在第99位的耗时就是第99百分位数。
应用日志关联配置
在应用日志关联配置区域,可以设置应用关联的日志源信息。更多信息,请参见日志分析。
URL收敛设置
在URL收敛设置区域,可以打开或关闭收敛功能的开关,并设置收敛阈值、收敛规则。URL收敛是指将具有相似性的一系列URL作为一个单独的个体展示,例如将前半部分都为/service/demo/的一系列URL集中展示。收敛阈值是指要进行URL收敛的最低数量条件,例如当阈值为100时,则符合规则正则表达式的URL数量达到100才会对它们进行收敛。
Arthas监控
在Arthas监控区域,可以打开或关闭Arthas诊断功能,并设置生效IP。更多信息,请参见Arthas诊断。
仅应用监控专家版支持该功能。
持续剖析设置
在持续剖析区域,可以打开或关闭总开关、CPU热点、内存热点、代码热点功能,并设置生效IP或网段。更多信息,请参见持续剖析。
信息脱敏设置
在信息脱敏设置区域,通过设置脱敏规则,探针将对JVM系统参数、K8s Yaml、方法入参、Arthas环境变量和系统变量等内容在采集时就进行脱敏处理。脱敏规则中各元素通过英文半角逗号分隔,每一个元素代表一个不区分大小写的正则表达式,以password
为例,脱敏规则等同于正则表达式.*password.*
。
探针在采集数据时会对数据的key按照对应的表达式进行过滤,如果满足条件,该key会被认为包含敏感数据进行脱敏处理。如下图所示,当脱敏规则为licenseKey时,其对-Darms.licenseKey
为key的信息进行了脱敏处理。
接口调用配置
在接口调用配置区域,可以设置慢调用阈值,并调整异常白名单、HTTP状态码白名单以及调整无效接口调用过滤策略。
异常白名单:输入不需要查看的异常名,从而将其从异常相关图表隐去。使用正则表达式匹配异常全名,多个异常规则请使用英文半角逗号(,)分隔。
异常过滤父类继承:异常过滤中可配置父类异常。所有继承该父类的异常都会被过滤。该功能仅支持4.1.6及以上版本探针。
HTTP状态码白名单:输入不需要查看调用情况的接口,从而将其从接口调用页面隐去。精确匹配HTTP状态码,多个状态码请使用英文半角逗号(,)分隔。
无效接口调用过滤:输入不需要查看调用情况的接口,从而将其从接口调用页面隐去。使用正则表达式匹配无效接口全名,多个规则请使用英文半角逗号(,)分隔。
数据库调用配置
在数据库调用配置区域,可以设置慢SQL阈值、采集SQL最大保留长度,并设置是否展示SQL中的变量绑定值以及常量值。
展示SQL中的变量绑定值:捕获PrepareStatement参数绑定的变量值,无需重启应用即可生效。
展示SQL中的常量值:仅对SQL截断,不做额外处理,无需重启应用即可生效。
调用链透传协议设置
在调用链透传协议设置区域,您可以根据自己的需求选择使用的Trace协议,ARMS支持的Trace协议请参见ARMS支持Tracing协议。
默认情况下,当一次调用到来时,ARMS探针会按照EagleEye、OpenTelemetry、SkyWalking、Jaeger、Zipkin的顺序依次探测是否存在该协议约定的请求头,如果探测到某个协议存在,则按照该协议约定恢复Trace上下文,后续调用下游时,也按照该协议约定往请求中塞入相关Header。当上述检测都失败时,默认使用EagleEye协议。
您可以在该页面选择任一协议作为优先协议。选择并保存后,ARMS会优先探测是否存在该协议约定的请求头。例如,按照如下配置,当一次调用到来时,ARMS探针将会改为按照Jaeger、EagleEye、OpenTelemetry、SkyWalking、Zipkin的顺序依次探测是否存在协议约定上下文。
您也可以选择强制使用某一种协议。例如,按照如下配置,当一次调用到来时,ARMS探针只会探测是否存在Jaeger协议约定的请求头,如果不存在,不会依次检测其他协议,而是重新生成新的Trace上下文。
高级设置
在高级设置区域,可以设置需过滤的接口、方法堆栈最大长度等。
探针每秒最大链路采集量:探针每秒最大可以处理的请求数量,默认为100,大于该阈值的调用链不会被收集。
探针日志级别:调整探针日志的打印级别,用于问题排查。
暂停采集调用链:控制调用链功能的启停,开关打开时,采集停止。
分位数统计:是否开启分位数统计功能。
方法堆栈最大保留长度:默认为128条,最大值为400条。
同类异常堆栈区分深度:同类型异常,用于作为不同异常区分的堆栈深度,一般设置为第一个差异调用的深度。
请求入参最大展示长度:默认为512字符,支持的最大长度为2048字符。
自定义RabbitMQ消费者:通过设置自定义消费者的类名或者包含匿名内部消费者的类名,可以看到该消费者的调用链路。多个消费者以英文半角逗号(,)分隔。
自定义Kafka消费方法:通过自定义消费方法,可以在通过Kafka原生SDK消费消息的场景下看到链路以及指标数据。
异步透传扫描包名:添加异步透传扫描包实现异步任务监控。异步透传扫描包中的Runnable、Callable和Supplier接口在创建新对象时会自动捕获当前线程调用链的上下文,并在异步线程中执行时使用该调用链上下文,完成串联。探针版本必须为v2.7.1.3或以上,升级探针的操作,请参见升级ARMS探针。
HTTP返回结果中包含TraceId:仅针对HTTP类型的请求,在Response Header中返回字段为eagleeye-traceid。
将配置复制到其他应用
如果您需要为其他应用同步相同配置,可以将对应配置复制到其他应用上。
将单个配置复制到其他应用
在对应配置区域单击保存并批量复制到其他应用。
如果弹出当前设置未保存对话框,请单击确定保存本应用配置后,再单击保存并批量复制到其他应用。
在弹出的对话框中选择生效的应用,然后单击确定。
将所有配置复制到其他应用
在页面底部单击保存并批量复制到其他应用。
如果弹出当前设置未保存对话框,请单击确定保存本应用配置后,再单击保存并批量复制到其他应用。
在弹出的对话框中选择生效的应用,然后单击确定。
全局默认配置
您可以将当前配置保存为全局默认配置,在之后创建新应用时将会默认使用当前配置。
在页面底部单击保存当前应用设置为全局默认配置。
如果弹出当前设置未保存对话框,请单击确定保存本应用配置后,再单击保存当前应用设置为全局默认配置。
在弹出的对话框中单击确认。