進行應用監控的自訂設定(如調用鏈採樣設定、Agent開關等)。
調試
您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。
調試
授權資訊
請求參數
|
名稱 |
類型 |
必填 |
描述 |
樣本值 |
| Pid |
string |
是 |
應用 ID。 在 ARMS 控制台的應用監控>應用列表頁面單擊目標應用程式名稱。此時瀏覽器地址欄中的 URL 即包含應用的 pid,格式為 pid=xxx。由於瀏覽器進行了編碼,因此需要對 pid 稍作修改。例如,如果 URL 中包含的 pid 為 xxx%4074xxx,則需要將%40 替換為@,即:xxx@74xxx。 |
a2n80plglh@745eddxxx |
| Settings |
array<object> |
否 |
自訂設定列表。 |
|
|
object |
否 |
自訂設定列表。 |
||
| Key |
string |
否 |
自訂設定,各設定的詳細欄位見下文補充說明。 |
sampling.enable |
| Value |
string |
否 |
自訂設定,各設定的詳細欄位見下文補充說明。 |
true |
採樣設定
| Key | 欄位說明 | Value |
| sampling.rate | 固定比例採樣採樣率 | 0~100 之間,預設為 10。 |
| sampling.useSamplingStrategyV2 | 是否使用自適應採樣 | 取值: - true:開啟自適應採樣。 - false(預設):關閉自適應採樣。 |
| sampling.v2config.spanNames4FullSampleStr | 全採樣介面名 | 樣本: "/api/v1/user"。 |
| sampling.v2config.spanNamePrefixes4FullSampleStr | 全採樣介面首碼 | - |
| sampling.v2config.spanNameSuffixes4FullSampleStr | 全採樣介面尾碼 | - |
探針開關設定
| Key | 欄位說明 | Value |
| enable | 探針開關 | 取值: - true:開啟監控。 - false(預設):關閉監控。 |
| akka.enable | 外掛程式開關 | 取值: - true(預設) - false |
| cassandra.enable | 外掛程式開關 | 取值: - true(預設) - false |
| dubbo.enable | 外掛程式開關 | 取值: - true(預設) - false |
| elasticsearch.enabled | 外掛程式開關 | 取值: - true(預設) - false |
| elasticjob.enable | 外掛程式開關 | 取值: - true(預設) - false |
| googlehttpclient.enable | 外掛程式開關 | 取值: - true(預設) - false |
| grpc.enable | 外掛程式開關 | 取值: - true(預設) - false |
| hsf.enable | 外掛程式開關 | 取值: - true(預設) - false |
| httpclient3.enable | 外掛程式開關 | 取值: - true(預設) - false |
| httpclient4.enable | 外掛程式開關 | 取值:- true(預設) - false |
| influxdb.enable | 外掛程式開關 | 取值: - true(預設) - false |
| jdbc.druid.enable | 外掛程式開關 | 取值: - true(預設) - false |
| jdbc.hikaricp.enable | 外掛程式開關 | 取值: - true(預設) - false |
| jdkhttp.enable | 外掛程式開關 | 取值: - true(預設) - false |
| jetty.enable | 外掛程式開關 | 取值: - true(預設) - false |
| liberty.enable | 外掛程式開關 | 取值: - true(預設) - false |
| mongodb.enable | 外掛程式開關 | 取值: - true(預設) - false |
| memcached.enable | 外掛程式開關 | 取值: - true(預設) - false |
| mysql.enable | 外掛程式開關 | 取值: - true(預設) - false |
| netty.enable | 外掛程式開關 | 取值: - true(預設) - false |
| okhttp.enable | 外掛程式開關 | 取值: - true(預設) - false |
| oracle.enable | 外掛程式開關 | 取值: - true(預設) - false |
| postgresql.enable | 外掛程式開關 | 取值: - true(預設) - false |
| play.enable | 外掛程式開關 | 取值: - true(預設) - false |
| quartz.enable | 外掛程式開關 | 取值: - true(預設) - false |
| redis.enable | 外掛程式開關 | 取值: - true(預設) - false |
| redis.redisson.enable | 外掛程式開關 | 取值: - true(預設) - false |
| lettuce.enable | 外掛程式開關 | 取值: - true(預設) - false |
| reactor.enable | 外掛程式開關 | 取值: - true(預設) - false |
| rabbitmq.client.enable | 外掛程式開關 | 取值: - true(預設) - false |
| kafka.enable | 外掛程式開關 | 取值: - true(預設) - false |
| onsclient.enable | 外掛程式開關 | 取值: - true(預設) - false |
| rxjava.enable | 外掛程式開關 | 取值: - true(預設) - false |
| schedulerx.enable | 外掛程式開關 | 取值: - true(預設) - false |
| servlet.enable | 外掛程式開關 | 取值: - true(預設) - false |
| spring.enable | 外掛程式開關 | 取值: - true(預設) - false |
| springBean.enable | 外掛程式開關 | 取值: - true(預設) - false |
| tomcat.enable | 外掛程式開關 | 取值: - true(預設) - false |
| vertx.enable | 外掛程式開關 | 取值: - true(預設) - false |
| weblogic.enable | 外掛程式開關 | 取值: - true(預設) - false |
| undertow.enable | 外掛程式開關 | 取值: - true(預設) - false |
| motan.enable | 外掛程式開關 | 取值: - true(預設) - false |
| ning.asynchttpclient.enable | 外掛程式開關 | 取值: - true(預設) - false |
| xxljob.enable | 外掛程式開關 | 取值: - true(預設) - false |
| mybatis.enable | 外掛程式開關 | 取值: - true(預設) - false |
應用日誌關聯配置
| Key | 欄位說明 | Value |
| logging.enable | 關聯業務日誌與 TraceId 開關 | 取值: - true(預設):開啟關聯業務日誌與 TraceId 開關。 - false:關閉關聯業務日誌與 TraceId 開關。 開啟後業務日誌中會自動產生調用鏈的 TraceId。 |
| logging.injectTraceId2Log.enable | 是否自動往使用者日誌注入 TraceId | 取值: - true - false(預設) |
| logging.injectSpanId2Log.enable | 是否自動往使用者日誌注入 SpanId | 取值: - true - false(預設) |
| logging.inject2MDC.enable | 是否往使用者 MDC 放置 Trace 上下文 | 取值: - true - false(預設) |
| SLS.bindType | 關聯類別型 | 取值: - logstore - storeview |
| SLS.project | 目前範圍業務日誌的 project | 目前範圍業務日誌的 project。 |
| SLS.logStore | 目前範圍業務日誌的 logstore | 目前範圍業務日誌的 logstore。 |
| SLS.index | 目前範圍業務日誌的關聯索引 | 取值: - 當指定全文索引時,不傳。 - 指定欄位索引時,取值為相應的欄位名。例如:SLS.index: tag。 欄位索引及全文索引的區別,請參見配置索引。 |
| SLS.storeView | StoreView 名稱 | 目前範圍業務日誌的 StoreView。 |
URL 收斂設定
| Key | 欄位說明 | Value |
| convergence.enable | 收斂 URL | 取值: - true(預設):開啟收斂 URL。 - false:關閉收斂 URL。 |
| convergence.minServerSize | 收斂閾值 | 預設 1000,大於此閾值即進行收斂。 |
| convergence.pattern | 收斂規則Regex | 可使用Regex設定收斂規則,多個Regex之間以英文逗號(,)分隔,直接填寫 URL 原文表示不收斂此 URL,例如:/service/(.*?)/demo。 |
Arthas 監控
| Key | 欄位說明 | Value |
| arthas.enable | Arthas 開關 | 取值: - true(預設):開啟 Arthas 開關。 - false:關閉 Arthas 開關。 |
| arthas.enableIps | 生效即時 IP | 配置啟用 Arthas 診斷的 IP,如果填寫,Arthas 診斷僅對特定 IP 有效,不填寫則預設對所有 IP 生效。多個 IP 請使用英文逗號(,)分割。 |
持久性能剖析設定
| Key | 欄位說明 | Value |
| cp.enable | 持續剖析開關 | 取值: - true:開啟持續剖析開關。 - false:關閉持續剖析開關。 該開關開啟後,需要配置生效 IP 或生效網段。 |
| cp.cpuEnable | 是否開啟 CPU 熱點 | 取值: - true - false |
| cp.cpuInterval | 採樣頻率,每次線程執行 CPU 耗時達到閾值後進行 CPU 熱點方法棧採集。從 4.x 版本探針開始生效。 | 取值範圍 1~1000ms,預設值:10ms |
| cp.allocEnable | 是否開啟記憶體熱點 | 取值: - true - false |
| cp.allocInterval | 採樣閾值,每次線程申請對應大小堆記憶體後進行記憶體熱點方法棧採集。 從 4.x 版本探針開始生效。 | 取值範圍 256~10240KB,預設值:1024KB |
| cp.wallClockEnable | 是否開啟代碼熱點 | 取值: - true - false |
| cp.wallClockInterval | 採樣頻率,每次線程運行相關時間長度後進行代碼熱點方法棧採集。從 4.x 版本探針開始生效。 | 取值範圍 1~1000ms,預設值:10ms |
| cp.allowIPs | 生效 IP。指定生效的 IP 位址,多個 IP 用英文逗號分隔。 | 樣本:10.10.1.1,10.10.1.2 |
| cp.allowNetwork | 生效網段。3.2.x+版本探針支援 0.0.0.0/0 地址。 | 樣本:192.0.0.0/8 |
資訊脫敏設定
| Key | 欄位說明 | Value |
| sanitizer.enable | 資訊脫敏開關 | 取值: - true(預設):開啟資訊脫敏開關。 - false:關閉資訊脫敏開關。 |
| sanitizer.keys | 脫敏規則 | 預設支援如樣本規則,對 key 進行直接匹配,以 password 為例,規則等同於正則式 .password.,不分區大小寫。多個規則之間以英文逗號分隔。 樣本:password,secret,key,token,credentials |
介面調用配置
| Key | 欄位說明 | Value |
| thresholds.interface | 慢調用閾值 | 預設為 500,單位為 ms。當介面回應時間大於該閾值的時候,該介面會被標記為慢調用。 |
| error.skip | 錯誤碼過濾,配置的 HTTP 狀態代碼不會被統計為錯誤調用 | 樣本值:"404,403"。 |
| defined.excludeurl | 無效介面調用過濾 | 支援以英文逗號(,)分隔多個介面調用。 樣本:/service/taobao,/service/status。 |
| metrics.prpc.enable | 介面調用指標是否記錄上遊介面名 | 取值: - true(預設) - false |
| metrics.ppid.enable | 介面調用指標是否記錄上遊應用程式名稱 | 取值: - true(預設) - false |
| http.metrics.recordHttpCode | 介面調用指標是否記錄原始狀態代碼 | 取值: - true - false(預設) |
資料庫調用配置
| Key | 欄位說明 | Value |
| thresholds.sql | 慢 SQL 閾值。當 SQL 查詢的耗時大於該閾值的時候,該查詢會被標記為慢 SQL。 | 預設為 500,單位為 ms。 |
| callsql.maxLength | 採集 SQL 最大保留長度。當 SQL 陳述式大於該閾值的時候,會被截斷。 | 預設為 1024 個字元,最小長度為 256 個字元,最大長度為 4096 個字元。 |
| jdbc.tracesqlbindvalue | 是否展示 SQL 中的變數綁定值 | 取值: - true:開啟捕獲 PrepareStatement 參數綁定變數值開關。 - false(預設):關閉捕獲 PrepareStatement 參數綁定變數值開關。 |
| jdbc.tracesqlraw | 是否展示 SQL 中的常量值 | 取值: - true - false(預設) |
| preparestatement.response.size | 是否記錄 MySql 查詢傳回值大小 | 取值: - true - false(預設) |
Trace 上下文傳播通訊協定設定
| Key | 欄位說明 | Value |
| trace.protocol.name | 首選傳播協議 | 可配置為 EagleEye、W3C、Skywalking、Zipkin、Jager。 |
| trace.protocol.strategy | 傳播模式 | 首選傳播協議的傳播策略,預設未 Unset,可設定為 PriorityUse 或 ForceUse。 |
訊息佇列配置
| Key | 欄位說明 | Value |
| rabbitmq.client.consumer.classes | 自訂 RabbitMQ 消費者。通過設定自訂消費者的類名或者包含匿名內部消費者的類名,可以看到該消費者的調用鏈路。 | 多個消費者以英文半形逗號(,)分隔。樣本:com.xxx.xxx.RabbitMQConsumer |
| kafka.consumer.entryPoint | 自訂 Kafka 消費方法。通過自訂消費方法,可以在通過 Kafka 原生 SDK 消費訊息的情境下看到鏈路以及指標資料。 | 需要設定的自訂消費方法的需要包含一個類型為 org.apache.kafka.clients.Consumer.ConsumerRecord 或者 org.apache.kafka.clients.consumer.ConsumerRecords 的參數。 |
| kafka.enableInjectKafkaHeaders | kafka 發送訊息自動透傳上下文。發送時自動往 Kafka 訊息中添加若干個 Header 用於關聯發送鏈路和消費鏈路。 | 取值: - true - false (預設) |
探針採集配置
| Key | 欄位說明 | Value |
| sampling.enable | 是否採集調用鏈 | 取值: - true(預設) - false |
| thresholds.limit | 探針每秒最大鏈路採集量。保護性手段,防止大流量情境下因為鏈路採集影響業務正常運行。高於預設值會消耗額外的系統資源,請您謹慎操作! | 預設值:100 |
| control.flow.threshold | 探針最大可處理 QPS 閾值。每秒請求量超過該閾值後,超出部分請求不再記錄 span 和產生指標,探針 4.1.10 版本開始生效。 | 預設值:10000 |
| metricsAndSpan.entranceless.enable | 是否採集無入口內部調用的資料 | 取值: - true(預設) - false |
| log.report.level | 探針記錄層級 | DEBUG、INFO、WARN(預設)、ERROR |
異常進階過濾配置
| Key | 欄位說明 | Value |
| exception.fromInstrumentedMethod.enable | 是否採集外掛程式異常。 | 取值: - true(預設) - false |
| exception.stacktrace | 同類異常堆棧區分深度 | 預設為 2。基於此堆棧深度識別同類型的異常。修改此配置會造成非預期的統計行為,請您謹慎操作! |
| exception.whitelist | 異常過濾白名單 | 預設值:""。 樣本值:"java.lang.RuntimeException"。 |
| exception.filterByParentClass | 異常過濾父類繼承。開啟後,異常過濾中可配置父類異常。所有繼承該父類的異常都會被過濾。該功能僅支援 4.1.6 及以上版本探針。 | 取值: - true - false(預設) |
| exception.advancedWhitelist | 異常 message 過濾。 | 預設值:""。 樣本:[{"exceptionName":"java.lang.RuntimeException","messageStartsWith":"prefixString"},{"exceptionName":"java.lang.NullPointerException","messageEndsWith":"suffixString"},{"exceptionName":"java.lang.IndexOutOfBoundsException","messageContains":"keyword"}] 對於上面配置,當滿足下述條件時對應的異常會被過濾: 異常為 java.lang.RuntimeException 且異常 message 以 prefixString 開頭。 異常為 java.lang.NullPointerException 且異常 message 以 suffixString 結尾。 異常為 java.lang.IndexOutOfBoundsException 且異常 message 包含 keyword 關鍵字。 |
池化監控配置
| Key | 欄位說明 | Value |
| threadpoolmonitor.enable | 線程池、串連池監控 | 取值: - true(預設) - false |
| threadpoolmonitor.threadNamePatternExtractStrategy | 線程池線程名模式提取策略 | REPLACE_ALL_DIGITAL 代表將線程名中所有數字替換為得到線程名模式。 REPLACE_TAIL_DIGITAL 代表將線程名中結尾的數字替換為得到線程名模式。 |
| threadpoolmonitor.threadPoolUsage.blacklist | 線程池使用情境過濾。不採集的線程池線使用情境,如果線程池的使用情境匹配上,則該線程池不監控。 | 預設值:""。 樣本值:"Tomcat,Vertx"。 |
| threadpoolmonitor.threadNamePattern.blacklist | 線程池線程名模式過濾。不採集的線程池線程名模式黑名單,如果線程池的線程名模式比對上,則該線程池不監控。 | 預設值:""。 樣本值:"http-nio-*-*, pool-1-thread-*"。 |
Span Attribute 配置
| Key | 欄位說明 | Value |
| otel.attribute.enable | 記錄 OTel Spec 約定 attributes | 取值: - true - false(預設) |
| tags.injection.strategy | Span 關聯應用標籤配置 | ALL_SPAN 代表對標籤會注入到所有的 span 中。 INCOMING_SPAN 代表標籤僅會注入到入口 span 中。 |
進階設定
| Key | 欄位說明 | Value |
| quantile.enable | 是否記錄分位元指標 | 取值: - true(預設) - false |
| callstack.maxLength | 方法堆棧最大保留長度 | 預設為 128。超出長度的方法棧將會在採集的時候被截斷。高於預設值會消耗額外的系統資源,請您謹慎操作! |
| compress.enable | 調用鏈壓縮,是否將重複調用(比如 for 迴圈)簡化。 | 取值: - true(預設) - false |
| param.maxLength | 請求入參最大展示長度 | 預設為 512。高於預設值會消耗額外的系統資源,請謹慎操作。 |
| thread.match.package | 非同步透傳掃描包名。4.x 以上探針自動支援非同步透傳,無需配置。 | - |
| responseInject.enable | HTTP 返回結果中包含 TraceId | 取值: - true - false(預設) |
| metrics.jvm.captureGcCause | 是否記錄 JVM GC Cause 資訊。探針需升級到 4.4.0 版本。 | 取值: - true - false(預設) |
返回參數
|
名稱 |
類型 |
描述 |
樣本值 |
|
object |
|||
| Data |
string |
操作是否成功。 |
success |
| RequestId |
string |
請求 ID。 |
78901766-3806-4E96-8E47-CFEF59E4**** |
| Message |
string |
返回資訊。 |
message |
| Code |
integer |
介面狀態代碼:2XX:成功 3XX:重新導向 4XX:請求錯誤 5XX:伺服器錯誤 |
200 |
| Success |
boolean |
查詢是否成功:
|
true |
樣本
正常返回樣本
JSON格式
{
"Data": "success",
"RequestId": "78901766-3806-4E96-8E47-CFEF59E4****",
"Message": "message",
"Code": 200,
"Success": true
}
錯誤碼
|
HTTP status code |
錯誤碼 |
錯誤資訊 |
描述 |
|---|---|---|---|
| 400 | ParameterMissing | You must specify the parameter. | 必選參數缺失 |
| 400 | ParameterTraceAppSettingKeyIllegal | The application configuration key is invalid. | 應用監控自定配置key非法 |
| 400 | ParameterTraceAppSettingValueIllegal | The application configuration value is invalid. | 應用監控自定配置value非法 |
| 400 | InternalError | InterPlease try again. Contact the DingTalk service account if the issue persists after multiple retries. | |
| 404 | AppNotExist | The application does not exist. | 應用不存在 |
訪問錯誤中心查看更多錯誤碼。
變更歷史
更多資訊,參考變更詳情。