SaveTraceAppConfig - 应用监控自定义设置

进行应用监控的自定义设置(如调用链采样设置、Agent开关等)。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
arms:SaveTraceAppConfignone
  • TraceApp
    acs:arms:{#regionId}:{#accountId}:traceapp/{#Pid}

请求参数

名称类型必填描述示例值
Pidstring

应用 ID。

在 ARMS 控制台的应用监控>应用列表页面单击目标应用名称。此时浏览器地址栏中的 URL 即包含应用的 pid,格式为 pid=xxx。由于浏览器进行了编码,因此需要对 pid 稍作修改。例如,如果 URL 中包含的 pid 为 xxx%4074xxx,则需要将%40 替换为@,即:xxx@74xxx。

a2n80plglh@745eddxxx
Settingsarray<object>

自定义设置列表。

object

自定义设置列表。

Keystring

自定义设置,各设置的详细字段见下文说明。

  • 调用链路采样相关
  • 总开关设置
  • 阈值设置
  • 高级设置
  • 线程设置
  • 内存快照设置
  • URL 收敛设置
  • 业务日志关联设置
sampling.enable
Valuestring

自定义设置,各设置的详细字段见下文说明。

  • 调用链路采样相关
  • 总开关设置
  • 阈值设置
  • 高级设置
  • 线程设置
  • 内存快照设置
  • URL 收敛设置
  • 业务日志关联设置
true

调用链路采样字段说明

Key字段说明Value
sampling.enable采样开关取值:
- true:开启采样开关。
- false:关闭采样开关。
sampling.rate采样率0~100 之间,默认为 10。

总开关字段说明

Key字段说明Value
enableAgent 总开关取值:
- true:开启 Agent 总开关。
- false:关闭 Agent 总开关。

阈值字段说明

Key字段说明Value
thresholds.limit限流阈值默认为 100。
thresholds.interface接口响应时间阈值默认为 500,单位为 ms。
thresholds.sql慢 SQL 查询阈值默认为 500,单位为 ms。

高级字段说明

Key字段说明Value
defined.excludeurl无效接口调用过滤支持以英文逗号(,)分隔多个接口调用。
默认值为:/**/*.jpg,/**/*.png,/**/*.js,/**/*.jpeg。
示例:/service/taobao,/service/status。
callstack.maxLength方法堆栈最大长度默认为 128,支持最大长度 400 条。
exception.stacktrace同类异常堆栈区分深度默认为 2,基于此堆栈深度识别同类型的异常。修改此配置会造成非预期的统计行为,请谨慎操作
callsql.maxLength采集 SQL 最大长度默认为 1024 个字符,最小长度为 256 个字符,最大长度为 4096 个字符。
jdbc.tracesqlbindvalue采集 SQL 绑定值取值:
- true:开启捕获 PrepareStatement 参数绑定变量值开关。
- false:关闭捕获 PrepareStatement 参数绑定变量值开关。
jdbc.tracesqlraw原始 SQL取值:
- true:开启捕获原始 SQL 语句开关。
- false:关闭捕获原始 SQL 语句开关。
exception.whitelist异常过滤使用正则表达式匹配异常类全名,多个异常请使用英文逗号(,)分隔。例如:java.lang.InterrupetedException,java.lang.IndexOutOfBoundsException。此处输入的异常不会显示在应用详情和异常分析页面的图表中。
error.skip错误数过滤默认情况下,大于 400 的状态码会计入错误数,您可以设置需要忽略的状态码,多个错误码使用英文逗号(,)分隔,例如:429 或 429,512。Agent 2.5.7.2 以上版本支持。
compress.enable调用链压缩取值:
- true:开启调用链开关。
- false:关闭调用链压缩开关。
param.maxLength请求入参最大长度默认为 512。高于默认值会消耗额外的系统资源,请谨慎操作
quantile.enable分位数统计取值:
- true:开启分位数统计开关。
- false:关闭分位数统计开关。
threadpoolmonitor.enable线程池、连接池监控需要应用重启生效
取值:
- true:开启线程池、连接池监控开关。
- false:关闭线程池、连接池监控开关。
async.autoTransmit自动透传异步仅在探针版本大于等于 2.8.3 时生效
需要应用重启生效。该功能会对提交到线程池中的 Runnable、Callable 任务进行封装以传递上下文。存在一定风险,请谨慎操作
取值:
- true:开启自动透传异步开关。
- false:关闭自动透传异步开关。
thread.match.package异步透传扫描包名仅在探针版本大于等于 2.7.1.3 时生效
需要应用重启生效。当对应包名下的 Runnable/Callable/Supplier 在创建时,会自动捕获 Trace 上下文并传递到新线程。多个包名可采用英文逗号(,)分隔。
responseInject.enable请求中返回 TraceId 的开关取值:
- true:开启返回 TraceId 的开关。
- false:关闭返回 TraceId 的开关。

线程字段说明

Key字段说明Value
tprof.enableThreadProfiler线程分析总控开关取值:
- true:开启线程分析总控开关。
- false:关闭线程分析总控开关。
开启后自动保存慢调用本地方法栈。
tprof.threadProfilerSlowInteractionRt慢调用监听触发阈值默认为 2000。耗时高于该阈值才启动线程分析,建议设为耗时的 99 分位线。低于 2000ms 会增加 CPU 消耗,不可小于 500ms。
tprof.enableThreadStackRecorder线程分析方法栈取值:
- true:开启线程分析方法栈。
- false:关闭线程分析方法栈。
开启后每隔 5 分钟采集一次方法栈。

应用日志关联字段说明

Key字段说明Value
logging.enable关联业务日志与 TraceId 开关取值:
- true:开启关联业务日志与 TraceId 开关。
- false:关闭关联业务日志与 TraceId 开关。
开启后业务日志中会自动生成调用链的 TraceId,此设置在重启应用后生效。支持 Log4j/Log4j2/Logback 日志组件。业务应用需要在日志的 Layout 中通过声明%X{EagleEye-TraceID}来输出 TraceId 信息。
SLS.project当前区域业务日志的 project当前区域业务日志的 project。
SLS.logStore当前区域业务日志的 logstore当前区域业务日志的 logstore。
SLS.index当前区域业务日志的关联索引取值:
- 当指定全文索引时,不传。
- 指定字段索引时,取值为相应的字段名。例如:SLS.index: tag
字段索引及全文索引的区别,请参见配置索引

URL 收敛字段说明

Key字段说明Value
convergence.enable收敛 URL取值:
- true:开启收敛 URL。
- false:关闭收敛 URL。
convergence.minServerSize收敛阈值大于此阈值即进行收敛。
convergence.pattern收敛规则正则可使用正则表达式设置收敛规则,多个正则表达式之间以英文逗号(,)分隔,直接填写 URL 原文表示不收敛此 URL,例如:/service/(.*?)/demo。

Arthas 诊断字段说明

注:Arthas 诊断相关配置仅在探针版本大于等于 2.7.1.3 时生效,其他前提条件请参见 Arthas 诊断

Key字段说明Value
arthas.enableArthas 开关取值:
- true:开启 Arthas 开关。
- false:关闭 Arthas 开关。
arthas.enableIps生效实时 IP配置启用 Arthas 诊断的 IP,如果填写,Arthas 诊断仅对特定 IP 有效,不填写则默认对所有 IP 生效。多个 IP 请使用英文逗号(,)分割。

持续剖析字段说明

注:持续剖析相关配置仅在探针版本大于等于 2.7.3.5 时生效,其他前提条件请参见持续剖析

Key字段说明Value
cp.enable持续剖析开关取值:
- true:开启持续剖析开关。
- false:关闭持续剖析开关。
*该开关开启后,需要配置生效 IP,否则该开关不会生效。配置模式包括以下两种。
模式Key字段说明Value
IP 白名单cp.allowIPsIP 白名单指定开启持续剖析的实例 IP,多个 IP 请使用英文逗号(,)分割。
示例:192.168.0.1,192.168.0.2
cp.allowNetwork网段地址请传递空字符串,否则将无法正常使用。
网段地址cp.allowIPsIP 白名单请传递空字符串,否则将无法正常使用。
cp.allowNetwork网段地址命中此网段地址范围的 IP 实例打开该功能。
示例:192.168.2.0/24

信息脱敏字段说明 注:信息脱敏相关配置仅在探针版本大于等于 2.9.0 时生效。

Key字段说明Value
sanitizer.enable信息脱敏开关取值:
- true:开启信息脱敏开关。
- false:关闭信息脱敏开关。
sanitizer.keys脱敏规则默认支持如示例规则,对 key 进行直接匹配,以 password 为例 ,规则等同于正则式 .*password.*,不分区大小写。多个规则之间以英文逗号分隔。
示例:password,secret,key,token,credentials

返回参数

名称类型描述示例值
object
Datastring

操作是否成功。

success
RequestIdstring

请求 ID。

78901766-3806-4E96-8E47-CFEF59E4****
Messagestring

返回信息。

message
Codelong

接口状态码:2XX:成功 3XX:重定向 4XX:请求错误 5XX:服务器错误

200
Successboolean

查询是否成功:

  • true:成功。
  • false:失败。
true

示例

正常返回示例

JSON格式

{
  "Data": "success",
  "RequestId": "78901766-3806-4E96-8E47-CFEF59E4****",
  "Message": "message",
  "Code": 200,
  "Success": true
}

错误码

HTTP status code错误码错误信息描述
400ParameterMissingYou must specify the parameter.必选参数缺失
400ParameterTraceAppSettingKeyIllegalThe application configuration key is invalid.应用监控自定配置key非法
400ParameterTraceAppSettingValueIllegalThe application configuration value is invalid.应用监控自定配置value非法
400InternalErrorInterPlease try again. Contact the DingTalk service account if the issue persists after multiple retries.-
404AppNotExistThe application does not exist.应用不存在

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2023-11-06OpenAPI 错误码发生变更查看变更详情
2023-08-14OpenAPI 错误码发生变更查看变更详情
2023-08-03OpenAPI 返回结构发生变更查看变更详情