您可以在自訂配置頁簽上調整探針功能開關、採樣策略等常用設定。
如果您需要使用API方式調整,請參見SaveTraceAppConfig。
前提條件
已為應用安裝探針,具體操作,請參見應用監控接入概述。
功能入口
登入ARMS控制台,在左側導覽列選擇。
在應用列表頁面頂部選擇目標地區,然後單擊目標應用程式名稱。
說明語言列的表徵圖含義如下:
:接入應用監控的Java應用。
:接入應用監控的Golang應用。
:接入應用監控的Python應用。-:接入Managed Service for OpenTelemetry的應用。
在左側導覽列中單擊應用設定,並在右側頁面單擊自訂配置頁簽。
設定自訂配置參數,設定完畢後,在頁面底部單擊儲存。
採樣率設定
ARMS專家版
在採樣率設定地區,可以為調用鏈設定採樣策略和採樣介面名稱。更多詳細資料,請參見調用鏈取樣模式選擇(3.2.8以下探針版本)。
調用鏈採樣率優先順序高於限流閾值。

ARMS基礎版
ARMS基礎版支援設定用戶端採樣策略,並按照採集資料行數進行計費。ARMS預設免費為您帳號下所有介面的每個探針每分鐘採集一條調用鏈。除此之外,您還可以單擊添加用戶端採樣策略,添加自訂的採樣策略。
設定項 | 說明 |
策略名稱稱 | 自訂採樣策略名稱稱。 |
採樣類型和採樣值 |
|
適用介面 | 設定採樣策略生效的介面範圍,可選擇每個介面或指定介面並輸入指定的介面名稱。 說明 目前每個採樣策略在選擇指定介面時,僅支援輸入一個介面名。若需對多個介面進行調用鏈採樣,則需設定多個採樣策略。 |
完成採樣原則設定後,您可以在控制台選擇是否開啟該策略。多個採樣策略會同時生效,但存在優先順序如下:預設採樣(免費)> 單介面流量限額 > 單介面固定比例採樣 > 全部介面流量限額 > 全部介面固定比例採樣。您也可以編輯已添加的採樣策略,或刪除不需要的採樣策略。

Agent(探針)開關和記錄層級
在Agent開關配置地區,可以開啟或關閉探針總開關以及各外掛程式開關,並配置記錄層級。
探針總開關和記錄層級的修改即時生效,無需重啟應用。如果關閉探針總開關,則系統將無法監控您的應用,請謹慎操作。要使對各外掛程式開關的修改生效,必須手動重啟應用。

閾值設定
在閾值設定地區,可以設定慢SQL查詢閾值。

訊息佇列配置
在訊息佇列配置地區,可以設定訊息相關參數。

自訂RabbitMQ消費者:通過設定自訂消費者的類名或者包含匿名內部消費者的類名,可以看到該消費者的調用鏈路。多個消費者以英文半形逗號(,)分隔。
自訂Kafka消費方法:通過自訂消費方法,可以在通過Kafka原生SDK消費訊息的情境下看到鏈路以及指標資料。
Kafka發送訊息自動透傳上下文:發送時自動往Kafka訊息中添加若干個Header用於關聯發送鏈路和消費鏈路。
探針採集配置

是否採集調用鏈:控制調用鏈資料是否上報,預設開啟,關閉後,調用鏈資料不再上報。
限流閾值:探針每秒最大可處理請求數,預設100條。大於該閾值的調用鏈,不被收集。
說明調用鏈採樣率優先順序高於限流閾值。
探針最大可處理QPS閾值:探針每秒可處理的請求數量(出於效能考慮,實際生效閾值和使用者配置閾值有5%以內偏差),超出該閾值的請求不會被監控,即不會對超出閾值的請求產生Span或者記錄指標,日誌關聯TraceId功能也不會生效。
採集無入口內部調用資料:無入口內部調用資料一般指通過JDK線程池啟動的一些定時發送HTTP請求、資料庫互動、訊息發送、RPC調用等產生的Span和Metrics資料。
記錄層級配置:調整探針日誌的列印層級,用於問題排查。
介面調用配置

介面回應時間閾值:當介面回應時間大於該閾值的時候,該介面會被標記為慢調用。
異常過濾:此處輸入的異常不會顯示在應用詳情和異常分析頁面的圖表中。
異常過濾父類繼承:開啟後,如果當前採集到異常是異常過濾白名單中配置的異常類的子類,則也會被過濾。
配置效果:滿足過濾條件的異常將不會展示在ARMS控制台。
錯誤數過濾:預設情況下,大於400的狀態代碼會計入錯誤數,您可以自訂大於400但不計入的HTTP狀態代碼。
無效介面調用過濾:輸入不需要查看調用情況的介面,探針將不會上報相關介面產生的觀測資料,從而將其從介面調用頁面隱去。
介面調用指標是否記錄上遊介面名和介面調用指標是否記錄上遊應用程式名稱:
控制介面指標中是否記錄調用該介面的上遊應用和上遊介面,主要影響提供服務中的鏈路上下遊是否有資料。當應用的上遊應用較多時,記錄該資訊可能導致指標上報量劇增,增加費用。
介面調用指標是否記錄原始狀態代碼:在HTTP介面相關指標中記錄原始的響應碼。
池化監控配置

線程池、串連池監控:支援Tomcat/Dubbo/HSF等架構的線程池指標監控,需升級探針至最新版本。
線程池線程名模式提取策略:該功能預設將線程池中任意一個運行線程的線程名中所有數字字元替換為
*,您也可以調整為僅將線程名的結尾字元替換為*。一般在應用中啟動了多個Dubbo Provider,且不同Dubbo Provider的監聽連接埠不一致的情況下,如果按照預設策略,則兩個Dubbo Provider中的兩個線程池因為提取出來的線程名模板相同會被彙總成一個,此時可以通過調整該策略來區分為兩個線程池。線程池使用情境過濾和線程池線程名模式過濾:按照線程池使用情境和線程池線程名模式過濾不上報某些線程池的監控指標。
說明該配置僅對 4.2.0 及以上版本的Java探針生效。
線程池使用情境:指該線程使用的情境,目前支援Tomcat、Vert.x、Undertow、Dubbo、Jetty、AliyunJavaAgent、default幾種,其中AliyunJavaAgent代表探針使用的線程池,default代表未歸類的其他線程池。
線程池線程名模式:指該線程池中線程名經過處理得到的線程名模式,例如http-nio-*-exec-*一般是將實際線程中數字部分替換為*後得到線程名。
Span Attributes配置

記錄OpenTelemetry Specification約定attributes:OpenTelemetry Specification中為每一種外掛程式類型約定了其產生Span所應當包含的Attributes項,但ARMS探針出於資料上報量考慮,預設情況下在Span中並不會記錄這些Attributes,您可以按照自身需求開啟,開啟後,各架構會增加的Attributes請參見OpenTelemetry Specification。
Span關聯應用標籤配置:用於控制當前在控制台應用列表頁面為應用綁定的標籤會被附在哪些Span上,預設情況下,所有Span都會包含應用標籤。出於用量考慮,您可以將應用標籤僅附在入口Span上(入口Span一般包括HTTP Server、RPC Server、MQ消費訊息、定時任務)。
進階設定

方法堆棧最大長度:預設為128條,最大值為400條。
同類異常堆棧區分深度:同類型異常,用於作為不同異常區分的堆棧深度,一般設定為第一個差異調用的深度。
採集SQL最大長度:預設為1024個字元,最小值為256,最大值為4096。
採集SQL綁定值:捕獲PrepareStatement參數綁定的變數值,無需重啟應用即可生效,當前僅支援向PrepareStatement中設定SQL變數值的情境。
原始SQL:僅對SQL截斷,不做額外處理。
是否記錄MySQL查詢傳回值大小:開啟後ARMS將會記錄MySQL查詢傳回值大小。
調用鏈新格式:採用支援調用鏈時間排序的新儲存格式(預設開啟)。
調用鏈壓縮:是否將重複調用(比如for迴圈)簡化,無需重啟應用即可生效。
請求入參最大長度:預設為512字元,支援的最大長度為2048字元。
分位元統計:是否開啟分位元統計功能。
說明分位元:指將一個隨機變數的機率分布範圍分為幾個等分的數值點,常用的有中位元(即二分位元)、四分位元、百分位元等。
自動透傳非同步:當通過線程池提交非同步任務時,自動透傳非同步上下文。
非同步透傳掃描包名:添加非同步透傳掃描包實現非同步任務監控。非同步透傳掃描包中的Runnable、Callable和Supplier介面在建立新對象時會自動捕獲當前線程調用鏈的上下文,並在非同步線程中執行時使用該調用鏈上下文,完成串聯。探針版本必須為v2.7.1.3及以上。
請求中返回TraceId:僅針對HTTP類型的請求,在Response Header中返回欄位為
eagleeye-traceid。
線程設定
在線程設定地區,可以開啟或關閉線程分析總控開關。
僅應用監控專家版支援該功能。

應用日誌關聯配置
在應用日誌關聯配置地區,可以設定應用關聯的日誌源資訊。更多資訊,請參見日誌分析。
僅應用監控專家版支援該功能。

URL收斂規則
在URL收斂設定地區,可以開啟或關閉收斂功能的開關,並設定收斂閾值、收斂規則。URL收斂是指將具有相似性的一系列URL作為一個單獨的個體展示,例如將前半部分都為/service/demo/的一系列URL集中展示。收斂閾值是指要進行URL收斂的最低數量條件,例如當閾值為100時,則符合規則Regex的URL達到100時才會對它們進行收斂。

設定Arthas監控
在Arthas監控地區,可以開啟或關閉Arthas診斷功能,並設定生效IP。更多資訊,請參見Arthas診斷。
僅應用監控專家版支援該功能。

持續剖析
在持續剖析地區,可以開啟或關閉總開關、CPU熱點、記憶體熱點、代碼熱點功能,並設定生效IP或網段。更多資訊,請參見接入持續剖析功能。
調用鏈透傳通訊協定設定
在調用鏈透傳通訊協定設定地區,您可以根據自己的需求選擇使用的Trace協議,ARMS支援的Trace協議請參見ARMS支援的Trace上下文傳播協議。

預設情況下,當一次調用到來時,ARMS探針會按照EagleEye、OpenTelemetry、SkyWalking、Jaeger、Zipkin的順序依次探測是否存在該協議約定的要求標頭,如果探測到某個協議存在,則按照該協議約定恢複Trace上下文,後續調用下遊時,也按照該協議約定往請求中塞入相關Header。當上述檢測都失敗時,預設使用EagleEye協議。
您可以在該頁面選擇任一協議作為優先協議。選擇並儲存後,ARMS會優先探測是否存在該協議約定的要求標頭。例如,按照如下配置,當一次調用到來時,ARMS探針將會改為按照Jaeger、EagleEye、OpenTelemetry、SkyWalking、Zipkin的順序依次探測是否存在協議約定上下文。

您也可以選擇強制使用某一種協議。例如,按照如下配置,當一次調用到來時,ARMS探針只會探測是否存在Jaeger協議約定的要求標頭,如果不存在,不會依次檢測其他協議,而是重建新的Trace上下文。

資訊脫敏
在資訊脫敏地區,通過設定脫敏規則,探針將對JVM系統參數、K8s Yaml、方法入參、Arthas環境變數和系統變數等內容在採集時就進行脫敏處理。脫敏規則中各元素通過英文半形逗號分隔,每一個元素代表一個不區分大小寫Regex,以password為例,脫敏規則等同於Regex.*password.*。
探針在採集資料時會對資料的key按照對應的運算式進行過濾,如果滿足條件,該key會被認為包含敏感性資料進行脫敏處理。如下圖所示,當脫敏規則為licenseKey時,其對-Darms.licenseKey為key的資訊進行了脫敏處理。
將配置複製到其他應用
如果您需要為其他應用同步相同配置,可以將對應配置複製到其他應用上。
將單個配置複製到其他應用
在對應配置地區單擊批量複製到其他應用。
在彈出的對話方塊中選擇生效的應用,然後單擊確定。

將所有配置複製到其他應用
在頁面底部單擊批量複製到其他應用。
在彈出的對話方塊中選擇生效的應用,然後單擊確定。

全域預設配置
您可以將當前配置儲存為全域預設配置,在之後建立新應用時將會預設使用當前配置。
在頁面底部單擊儲存當前應用設定為全域預設配置。
在彈出的對話方塊中單擊確認。