全部產品
Search
文件中心

Managed Service for OpenTelemetry:調用鏈分析

更新時間:Jul 06, 2024

將應用資料上報至Managed Service for OpenTelemetry後,Managed Service for OpenTelemetry即可開始監控應用,Managed Service for OpenTelemetry的調用鏈分析功能是基於已儲存的全量鏈路詳細資料,自由組合篩選條件與彙總維度進行即時分析,可以滿足不同情境的自訂診斷需求。

前提條件

已將應用資料上報至Managed Service for OpenTelemetry,具體操作,請參見接入指南

篩選調用鏈

  1. 登入可觀測鏈路 OpenTelemetry 版控制台

  2. 在左側導覽列單擊調用鏈分析,然後在頂部功能表列選擇目標地區。

  3. 調用鏈分析頁面右上方的時間選擇框設定需要查詢的時間段。

  4. 篩選鏈路。

    • 在左側快捷篩選地區,通過狀態、耗時、應用程式名稱、介面名稱和主機地址維度快速篩選鏈路。

      篩選條件將會顯示在頁面頂部文字框內。

    • 單擊頂部文字框,在下拉彈窗中修改篩選條件或設定其他維度篩選條件。

      image

    • 在頂部文字框直接輸入查詢條件。查詢文法說明,請參見調用鏈分析查詢用法說明

      說明
      • 單擊文字框右側的儲存表徵圖可以儲存當前篩選條件。

      • 單擊文字框右側的已儲存視圖可以查看已儲存的篩選條件,單擊目標的篩選條件可以快速查看對應篩選條件下的鏈路資訊。

      • 選擇彙總維度,可以將篩選後的資料按照指定維度彙總。

鏈路列表

篩選設定完成後,調用鏈分析頁面將會顯示篩選過濾後的鏈路查詢資訊,包括Span數和HTTP錯誤數的柱狀圖,耗時百分位的時序曲線,以及Span列表。

image

在Span列表地區,您可以執行以下操作:

  • 單擊目標Span右側操作列的詳情,可以查看完整的鏈路資訊。更多資訊,請參見鏈路詳情

  • 單擊目標Span右側操作列的日誌,可以查看鏈路對應的日誌資訊。

  • 單擊右上方的設定表徵圖可以增加或隱藏列表顯示的參數。

  • 將滑鼠懸浮於Span參數上,單擊右側的過濾表徵圖,可以將當前參數值添加為篩選條件。

    image

散佈圖

散佈圖頁面以時間為橫軸,耗時指標為縱軸,顯示調用鏈的耗時分布情況。將滑鼠懸浮於散點上,可以顯示散點對應的調用鏈的基本資料。單擊散點可以查看調用鏈對應的調用詳情。更多資訊,請參見鏈路詳情

image.png

全鏈路彙總

調用鏈分析對查詢到的Span可以按照各個維度進行分析,但這些分析是針對單個Span,並未在鏈路層級深度分析。而全鏈路彙總功能支援通過指定條件查詢分布式調用鏈路的TraceId(最多5000個),然後基於這些TraceId查詢對應的Span,並彙總這些Span得出最終結果,整個過程保證彙總的鏈路完整性。

說明

由於全鏈路彙總是按照查詢條件後彙總計算相應資料的,當您選擇的條件較多時,查詢計算存在一定延遲,請耐心等待。

image

參數

說明

spanName

Span名稱。

serviceName

Span對應的應用程式名稱。

請求數/請求比例

請求比例表示調用當前Span節點的請求比例數。

例如10%表示10%的請求會調用當前Span。

計算公式:請求比例=當前Span的請求數/總請求數*100%

span數/請求倍數

請求倍數表示平均每個請求調用當前Span的次數。

例如1.5表示每個請求會調用當前Span 1.5次 。

計算公式:請求倍數=Span數/Span的請求數

平均自身耗時/比例

平均自身耗時表示不包括子Span的耗時。

例如,對於Span A和其子Span B, 其中A耗時為10 ms, B耗時為8 ms,那A的自身耗時為2 ms。

計算公式:自身耗時=Span耗時-所有子Span耗時總和

重要

如果是非同步呼叫,自身耗時即Span耗時,無需減去子Span耗時。

平均耗時

該Span的平均耗時。

異常數/異常比例

異常比例表示出現異常的請求比例。

例如3%表示有3%的請求出現異常。

計算公式:異常比例=異常請求數/總請求數

重要

異常請求數不等於異常數(Span調用異常的次數),當請求倍數大於1時, 一個異常請求可能對應多個異常數。

樣本:如下表所示,Span A調用Span B和Span C,各參數含義如下。

spanName

serviceName

請求數/請求比例

span數/請求倍數

平均自身耗時/比例

平均耗時

異常數/異常比例

A

-

demo

10/100.00%

10/1.00

5.00ms/25.00%

20ms

2/20.00%

-

B

demo

4/40.00%

8/2.00

16.00ms/100.00%

16ms

2/50.00%

-

C

demo

1/10.00%

1/1.00

4.00ms/100.00%

4ms

1/100.00%

對於入口Span,A的請求數/請求比例表示A的請求總數為10次,比例為100%。B的請求數/請求比例為4/40.00%,表示只有4次請求調用了B,同理只有1次請求調用了C,對應的請求比例分別為40%和10%。其餘的請求可能因邏輯判斷或者異常而未調用B和C。這裡反映了請求的分布比例。

A的span數/請求倍數為10/1.00,表示每次請求只調用了一次A,但是對於B而言,4次請求有8個Span,每次請求調用了2次B。這裡反映了一次請求中Span的分布比例。

A的平均自身耗時/比例為5.00ms/25.00%,表示A除了B和C之外的平均耗時為5ms,只佔整體平均耗時的25%。而子Span B和C因為沒有子Span,所以自身耗時即整體耗時。這裡反映了耗時的分布比例。

A的異常數/異常比例為2/20.00%,表示A發生了2次異常,佔整體請求的20%。B的異常數/異常比例為2/50.00%,因為每次請求調用了2次B,總的請求數是4,異常比例是50%,那麼2次請求發生了異常。所以B的分布可能是:一共有4次請求,其中有2次請求調用的4個Span B都是正常的,剩下2次請求中,首次Span B的調用都發生異常,然後重新調用成功。

說明

如果需要查看具體的調用鏈詳情,可以將滑鼠懸浮於藍色的Span名稱上,在懸浮框中可以看到推薦的調用鏈ID,單擊TraceId即可查看。

全鏈路拓撲

全鏈路拓撲頁簽顯示調用鏈彙總後的應用間拓撲。如下圖所示,表示兩個應用間存在調用關係,同時展示相應的請求數、錯誤數、回應時間等資料。

image

錯/慢Trace分析

錯/慢Trace分析旨在協助使用者分析批量異常調用鏈的共有維度特徵,例如錯/慢調用都來自同一個主機、同一個介面,可以分別篩選對應的主機、介面下的Trace,或通過組合維度(例如serviceName="arms-demo" AND ip="192.168.1.1")篩選Trace,快速定位系統異常。錯/慢Trace分析也可以用於梳理慢介面,對系統進行定向最佳化等。

慢Trace分析

ARMS對1000條耗時最長的Trace進行分析,展示與慢Trace顯著相關的Top 5維度資訊。

image

上圖的樣本表示,在1000條耗時最長的Trace中,有488條Trace的IP為10.219.152.24,且這些Trace的平均耗時為16.3s,說明IP為10.219.152.24的主機可能負載過高,導致回應時間較長。建議進入錯/慢Trace分析頁簽進行深入分析。

右側的164是該維度異常分數,分數越高,該維度是慢調用根因的可能性越大。

慢Trace分析詳情

在慢Trace分析功能中,ARMS會在當前查詢條件下,以耗時大於耗時對比臨界值的Trace中耗時最高的1000條Trace作為樣本,與隨機抽樣的耗時小於耗時對比臨界值的1000條Trace進行對比,分析並識別出與慢調用顯著性相關的Top 3關鍵特徵。

說明

您可以根據需求,自訂耗時對比臨界值。例如,如果您想分析耗時超過1分鐘的Trace的維度特徵,可以修改閾值為60000ms。

image

上圖樣本中可以看到,IP為10.219.152.24的Trace在慢Trace樣本中佔比最高,達到46.8%,並且IP為10.219.152.24的Trace僅占正常Trace的6.8%,說明大量的慢調用經過這個IP,且經過這個IP的調用鏈耗時都比較高,也許這個IP對應的主機出現了異常,值得深入分析。

說明

同樣,經過IP為10.219.154.56的Trace和介面名為/eventCenter的Trace也值得深入分析。

單擊柱狀圖表徵圖,對IP為10.219.152.24的Trace進行下鑽分析。

image

可以發現大量慢調用都來自/eventCenter介面,單擊/eventCenter介面的柱狀圖,繼續下鑽分析。

image

最終可以定位到根因ip="10.219.152.24" AND spanName="/eventCenter"

說明

您也可以直接在搜尋方塊中填入任意篩選條件,ARMS會對您指定的Trace進行分析。查詢文法說明,請參見調用鏈分析查詢用法說明

image

錯Trace分析

ARMS隨機播放1000條錯Trace進行分析,展示與錯Trace顯著相關的Top 5維度資訊。

image

上圖的樣本表示,在1000條錯Trace樣本中,來自openVPromCluster介面的Trace佔24.3%,並且這些Trace的錯誤率達到了98.78%,說明openVPromCluster介面很可能出現了異常,導致大量錯誤調用。建議進入錯/慢Trace分析頁簽進行深入分析。

右側的92是該維度異常分數,分數越高,該維度是錯調用根因的可能性越大。

錯Trace分析詳情

在錯Trace分析功能中,ARMS會隨機抽樣1000條錯Trace和1000條正常Trace,分析識別出與錯調用顯著性相關的Top 3關鍵特徵。

image

上圖樣本中可以看到,在1000條錯Trace樣本中,介面名為/components/api/v1/mall/product的Trace佔100%,且僅有9.8%的正常Trace介面名為/components/api/v1/mall/product,這說明所有的錯Trace都來自介面/components/api/v1/mall/product,並且經過這個介面的Trace幾乎都出錯了,該介面很有可能出現了異常,值得深入分析。

說明

同樣,經過IP為10.0.0.47和10.0.0.37的Trace大部分調用都出錯了,也值得深入分析。

單擊spanName = "/components/api/v1/mall/product"的柱狀圖表徵圖,可以過濾出介面名為/components/api/v1/mall/product的Trace,然後對相關Trace進行下鑽分析。

image

可以發現錯誤調用集中在10.0.0.47、10.0.0.37和10.0.0.50的IP上,繼續下鑽。

image

發現在serviceName="mall-gateway" AND spanName="/components/api/v1/mall/product" AND ip="10.0.0.47"篩選條件下檢索的所有Trace都是錯Trace,說明在10.0.0.47主機中,mall-gateway應用的/components/api/v1/mall/product介面在該時段出現了異常。

image

說明

錯/慢Trace分析更多使用案例,請參見通過錯/慢調用鏈排查應用產生異常的原因

鏈路詳情

在鏈路詳情面板可以查看鏈路下的所有介面、鏈路開始時間、總耗時、介面是否異常、以及每個介面的調用耗時。

調用鏈詳情

在鏈路詳情面板,您可以執行以下操作:

  • 單擊目標介面右側的放大鏡表徵圖表徵圖,可以查看目標介面下的方法棧和分析總覽資訊。

    方法棧

    介面方法棧

    分析總覽

    image.png

  • 單擊介面名稱,可以在面板右側查看對應介面的附加資訊、指標詳情和日誌。

相關文檔

為避免在出現問題後被動診斷錯誤原因,您還可以使用警示功能針對一個介面或全部介面建立警示,即可在出現問題時向營運團隊發送通知。如何建立警示,請參見建立警示規則