通過調(diào)用鏈路和日志分析定位業(yè)務(wù)異常問題
定位業(yè)務(wù)異常問題難度大、效率低,為了解決這一難題,ARMS應(yīng)用監(jiān)控通過結(jié)合調(diào)用鏈路和日志分析,可以快速、準確地定位業(yè)務(wù)異常問題,提升微服務(wù)框架下的診斷效率。
前提條件
已開通日志服務(wù)SLS。登錄日志服務(wù)控制臺時,根據(jù)頁面提示開通日志服務(wù)。
已創(chuàng)建Project,詳情請參見創(chuàng)建項目Project。
已創(chuàng)建Logstore,詳情請參見創(chuàng)建Logstore。
背景信息
在使用調(diào)用鏈路和日志分析定位業(yè)務(wù)異常問題前,需要先了解Metrics、Tracing和Logging三個概念。
Metrics:應(yīng)用的關(guān)鍵性能指標,如應(yīng)用提供服務(wù)請求量、應(yīng)用提供服務(wù)平均響應(yīng)時間、應(yīng)用依賴服務(wù)請求量等。
Tracing:調(diào)用鏈路,應(yīng)用的任何接口調(diào)用、請求響應(yīng)等動作都會綁定到完整的鏈路。
Logging:業(yè)務(wù)日志,應(yīng)用的任何接口調(diào)用、請求響應(yīng)等動作都會輸出完整的業(yè)務(wù)日志。
當(dāng)應(yīng)用出現(xiàn)業(yè)務(wù)異常問題時,應(yīng)用指標統(tǒng)計圖會出現(xiàn)明顯波動,您可據(jù)此粗略地分析異常問題;通過完整的調(diào)用鏈路和業(yè)務(wù)日志分析,可以精準定位業(yè)務(wù)異常問題。
關(guān)聯(lián)業(yè)務(wù)日志與TraceId
登錄ARMS控制臺,在左側(cè)導(dǎo)航欄選擇 。
在應(yīng)用列表頁面頂部選擇目標地域,然后單擊目標應(yīng)用名稱。
說明語言列顯示圖標的應(yīng)用為接入應(yīng)用監(jiān)控的應(yīng)用,顯示-圖標的應(yīng)用為接入可觀測鏈路 OpenTelemetry 版的應(yīng)用。
在左側(cè)導(dǎo)航欄中單擊應(yīng)用設(shè)置,并在右側(cè)單擊自定義配置頁簽。
在自定義配置頁簽的應(yīng)用日志關(guān)聯(lián)配置區(qū)域,選擇日志源為日志服務(wù),打開關(guān)聯(lián)業(yè)務(wù)日志與TraceId開關(guān),選擇日志服務(wù)所在地域,然后綁定Project和Logstore。
在自定義配置頁簽左下角單擊保存。
從應(yīng)用指標的角度排查業(yè)務(wù)異常問題
登錄ARMS控制臺,在左側(cè)導(dǎo)航欄選擇 。
在應(yīng)用列表頁面頂部選擇目標地域,然后單擊目標應(yīng)用名稱。
說明語言列顯示圖標的應(yīng)用為接入應(yīng)用監(jiān)控的應(yīng)用,顯示-圖標的應(yīng)用為接入可觀測鏈路 OpenTelemetry 版的應(yīng)用。
在左側(cè)導(dǎo)航欄單擊應(yīng)用總覽,在頂部選擇概覽分析,然后在右上角選擇或自定義設(shè)置目標時間段。
概覽分析頁面展示目標應(yīng)用的關(guān)鍵指標,如應(yīng)用提供服務(wù)請求量、應(yīng)用提供服務(wù)平均響應(yīng)時間、應(yīng)用依賴服務(wù)請求量等。
在概覽分析頁面選擇某個應(yīng)用指標,在該指標的曲線圖上拖動鼠標選取目標時間段。
本示例以應(yīng)用提供服務(wù)平均響應(yīng)時間指標為例。
查看步驟4所選時間段的調(diào)用鏈路。
單擊查看所選時間段的調(diào)用鏈路。
在調(diào)用鏈路列表面板選擇狀態(tài)異常(顯示)的調(diào)用鏈路記錄,單擊該調(diào)用鏈路記錄TraceId列下的TraceId值。
您也可以在該調(diào)用鏈路記錄操作列下單擊查看日志,查看該時間點的業(yè)務(wù)日志,分析業(yè)務(wù)異常原因。
單擊調(diào)用鏈路頁簽,然后在詳情列下單擊圖標。
單擊方法棧,在鏈路詳情信息頁面查找錯誤信息,鼠標懸停在錯誤信息上可查看異常原因。
查看步驟4所選時間段的業(yè)務(wù)日志。
單擊查看所選時間段的日志。
在日志分析頁面選擇異常錯誤信息,查看日志并定位業(yè)務(wù)異常原因。
從接口調(diào)用的角度排查業(yè)務(wù)異常問題
登錄ARMS控制臺,在左側(cè)導(dǎo)航欄選擇 。
在應(yīng)用列表頁面頂部選擇目標地域,然后單擊目標應(yīng)用名稱。
說明語言列顯示圖標的應(yīng)用為接入應(yīng)用監(jiān)控的應(yīng)用,顯示-圖標的應(yīng)用為接入可觀測鏈路 OpenTelemetry 版的應(yīng)用。
在左側(cè)導(dǎo)航欄單擊接口調(diào)用。
在接口調(diào)用頁面的接口列表區(qū)域單擊目標接口,然后單擊調(diào)用鏈查詢頁簽。
在調(diào)用鏈查詢頁簽選擇狀態(tài)異常(顯示)的接口調(diào)用記錄。
查看接口調(diào)用的調(diào)用鏈路。
在目標接口調(diào)用記錄的TraceId列下單擊TraceId的值。
單擊調(diào)用鏈路頁簽,然后在詳情列下單擊圖標。
單擊方法棧,在鏈路詳情信息頁面查找錯誤信息,鼠標懸停在錯誤信息上可查看異常原因。
查看接口調(diào)用的日志。
在目標接口調(diào)用記錄的操作列下單擊查看日志。
在日志分析頁面選擇異常錯誤信息,查看日志并定位業(yè)務(wù)異常原因。
相關(guān)文檔
您可以通過創(chuàng)建告警對相關(guān)指標進行異常檢測。具體操作,請參見應(yīng)用監(jiān)控告警規(guī)則。