我們的系統應該配置哪些監控報警項?

老马啸西风發表於2024-11-25

隨筆

從千萬粉絲“何同學”抄襲開源專案說起,為何純技術死路一條?

資料來源的統一與拆分

監控報警系統的指標、規則與執行閉環

我們的系統應該配置哪些監控報警項?

監控報警系統如何實現自監控?

java 老矣,尚能飯否?

一騎紅塵妃子笑,無人知是荔枝來!

應用監控指北

解設我們千辛萬苦搭建好了一個監控平臺,那麼應該配置哪些監控項呢?

本文將以通俗易懂的方式,梳理簡單梳理一下需要的關鍵監控項。

一、基礎設施層監控

1. 伺服器硬體資源

  • CPU使用率
    高CPU使用率會導致效能瓶頸,需要及時監控和最佳化。
  • 記憶體使用率
    記憶體不足可能導致系統崩潰或頻繁垃圾回收(GC)。
  • 磁碟IO和空間
    磁碟耗盡或IO瓶頸會直接影響系統的可用性。
  • 網路頻寬和延遲
    網路丟包和延遲問題會影響系統效能,尤其在分散式系統中。

2. 虛擬化和容器

  • 容器資源限制(CPU、記憶體、磁碟空間)
    超出限制會導致應用異常。
  • 主機節點資源利用率
    確保多個容器或虛擬機器穩定執行。

工具推薦:使用普米(Prometheus)和 Zabbix 進行實時監控。

二、應用層監控

1. 服務健康狀態

  • 介面可用性
    確保核心業務介面可訪問。
  • 響應時間
    及時發現效能下降的問題。
  • 錯誤率(如5xx、4xx)
    快速識別程式異常或配置錯誤。

2. 應用效能

  • QPS/TPS(每秒查詢/事務量)
    衡量系統負載能力。
  • 執行緒池狀態
    避免執行緒池耗盡,確保服務穩定。
  • GC時間和頻率
    排查Java等語言的記憶體管理問題。

3. 日誌異常

  • 關鍵字監控(如“ERROR”、“Exception”)
    快速定位潛在問題。
  • 日誌流量突增
    可能是系統故障或惡意攻擊的訊號。

工具推薦:使用 CAT 監控效能,日誌指標採集工具監控日誌異常。

三、資料庫層監控

1. 連線池

  • 連線池使用率
    連線耗盡會直接影響業務執行。

2. 查詢效能

  • 慢查詢
    找出效能瓶頸的SQL語句。
  • 查詢失敗率
    預警潛在的資料庫問題。

3. 資料庫資源

  • CPU、記憶體、磁碟IO
    衡量資料庫壓力。
  • 主從同步延遲
    確保資料一致性。

資料庫監控也可以透過普米設定報警。連線池可以透過 CAT 中的擴充。慢日誌可以基於日誌。

四、網路層監控

1. API閘道器

  • 請求數量和延遲
    評估流量和效能。
  • 限流/熔斷觸發次數
    發現流量異常或下游問題。

2. 網路連線

  • HTTP連線錯誤率
    檢查連線超時或網路中斷。
  • 防火牆規則日誌
    檢測潛在的惡意訪問。

五、安全監控

1. 使用者行為

  • 登入失敗次數
    防止暴力破解。
  • 敏感操作日誌
    追蹤高風險操作。

2. 系統漏洞

  • 異常檔案改動
    檢測入侵行為。
  • 未授權訪問
    發現非法操作。

這些一般隸屬於安全部門處理,但是安全部門一般不是研發,也是需要藉助一個平臺的。

六、業務指標監控

1. 核心業務流程

  • 訂單數量、支付成功率
    確保業務正常執行。
  • 使用者轉化率
    發現問題並最佳化策略。

2. 自定義指標

根據業務模型定製監控指標(如庫存狀態、廣告點選率)。

業務系統是非常複雜的,一般可以配置數量+失敗率/成功率+波動比例

總結

實施監控的關鍵原則

  1. 全面性
    覆蓋系統的各個層級,避免監控盲區。
  2. 實時性
    快速收集資料,及時發現並處理問題。
  3. 高可用性
    監控系統本身需要穩定可靠。
  4. 靈活性
    支援動態調整監控規則和指標。

結合自己具體的業務,配置後及時的處理報警,而不是等使用者報警上來時,希望可以幫到你。

相關文章