最佳實踐:4個黃金指標和USE方法


Prometheus鼓勵用戶監控所有的東西,首先是及時發現問題其次是要能夠快速對問題進行定位。

4個黃金指標

4個黃金指標可以在服務級別幫助衡量終端用戶體驗、服務中斷、業務影響等層面的問題。
主要關注與以下四種類型的指標:延遲,通訊量,錯誤以及飽和度:

  • 延遲:服務請求所需時間。
    記錄用戶所有請求所需的時間,重點是要區分成功請求的延遲時間和失敗請求的延遲時間。
    例如在數據庫或者其他關鍵禍端服務異常觸發HTTP 500的情況下,用戶也可能會很快得到請求失敗的響應內容,如果不加區分計算這些請求的延遲,可能導致計算結果與實際結果產生巨大的差異。
    除此以外,在微服務中通常提倡“快速失敗”,開發人員需要特別注意這些延遲較大的錯誤,因為這些緩慢的錯誤會明顯影響系統的性能,因此追蹤這些錯誤的延遲也是非常重要的。

  • 通訊量:監控當前系統的流量,用於衡量服務的容量需求。
    流量對於不同類型的系統而言可能代表不同的含義。例如,在HTTP REST API中, 流量通常是每秒HTTP請求數;

  • 錯誤:監控當前系統所有發生的錯誤請求,衡量當前系統錯誤發生的速率。
    對於失敗而言有些是顯式的(比如, HTTP 500錯誤),而有些是隱式(比如,HTTP響應200,單實際業務流程依然是失敗的)。
    對於一些顯式的錯誤如HTTP 500可以通過在負載均衡器(如Nginx)上進行捕獲,而對於一些系統內部的異常,則可能需要直接從服務中添加鈎子統計並進行獲取。

  • 飽和度:衡量當前服務的飽和度。
    主要強調最能影響服務狀態的受限制的資源。
    例如,如果系統主要受內存影響,那就主要關注系統的內存狀態,如果系統主要受限與磁盤I/O,那就主要觀測磁盤I/O的狀態。
    因為通常情況下,當這些資源達到飽和后,服務的性能會明顯下降。同時還可以利用飽和度對系統做出預測,比如,“磁盤是否可能在4個小時候就滿了”。

RED方法

主要關注以下三種關鍵指標:

  • (請求)速率:服務每秒接收的請求數。
  • (請求)錯誤:每秒失敗的請求數。
  • (請求)耗時:每個請求的耗時。
    在“4大黃金信號”的原則下,RED方法可以有效的幫助用戶衡量雲原生以及微服務應用下的用戶體驗問題。

USE方法

USE方法全稱”Utilization Saturation and Errors Method”,主要用於分析系統性能問題,可以指導用戶快速識別資源瓶頸以及錯誤的方法。
正如USE方法的名字所表示的含義,USE方法主要關注與資源的:使用率(Utilization)、飽和度(Saturation)以及錯誤(Errors)。

  • 使用率:關注系統資源的使用情況。 這里的資源主要包括但不限於:CPU,內存,網絡,磁盤等等。100%的使用率通常是系統性能瓶頸的標志。
  • 飽和度:例如CPU的平均運行排隊長度,這里主要是針對資源的飽和度(注意,不同於4大黃金信號)。任何資源在某種程度上的飽和都可能導致系統性能的下降。
  • 錯誤:錯誤計數。例如:“網卡在數據包傳輸過程中檢測到的以太網網絡沖突了14次”。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM