自訂Linux監控代理

預設情況下,監控代理程式從一系列平台和應用程式收集資料。 您可以編輯代理程式配置檔來變更其預設行為,以及包括或排除資料。 您可以自訂監控代理程式設定檔以包含自訂指標,例如 JMX、StatsD,和Prometheus。 您也可以過濾掉度量值及容器。

監控代理程式使用兩個設定檔來指定要自動收集哪些資料:

監控代理設定檔
檔案 說明 位置
dragent.default.yaml 主設定檔
**重要:**請勿編輯此檔案。
/opt/draios/etc/dragent.default.yaml
dragent.yaml 您編輯用於自訂監控代理程式的設定檔。 /opt/draios/etc/dragent.yaml

您可以編輯 dragent.yaml 檔來自訂收集的資料。 變更會在您儲存檔案之後立即生效。 代理程式會偵測變更,並自動重新啟動。 您可以在dragent.default.yaml檔案中找到監控代理程式檢查的頻率和檔案。

例如,dragent.default.yaml 包括下列資訊:

check_frequency_s: 5
files:
- /opt/draios/etc/dragent.yaml
- /opt/draios/etc/kubernetes/config/dragent.yaml
- /opt/draios/etc/kubernetes/secrets/access-key

編輯 dragent yaml 檔案

yaml 檔案位於 /opt/draios/etc/ 中。

請完成下列步驟來編輯檔案並套用變更:

  1. 直接存取 dragent.yaml。 此檔案位於 /opt/draios/etc/dragent.yaml

  2. 編輯檔案。 請使用有效的 YAML 語法。

  3. 重新啟動代理程式。 執行下列指令:

    service dragent restart
    

封鎖埠

若要封鎖來自網路埠的網路資料流量及度量值,您必須自訂 dragent.yaml 檔案中的 blacklited_ports 區段。 您必須列出要從中過濾掉任何資料的埠。

**附註:**埠 53 (DNS) 一律列入黑名單。

例如,以下範例顯示如何設定監控代理程式的blacklisted_ports部分以排除來自連接埠 6666 和 6379 的資料:

blacklisted_ports:
    - 6666
    - 6379

包括及排除度量值

若要過濾自訂度量值,您必須自訂 dragent.yaml 檔中的 metrics_filter 區段。 您可以配置 includeexclude 過濾參數,來指定要包括哪些度量值,以及要過濾掉哪些度量值。

**附註:**過濾規則順序設定如下:套用符合度量值的第一個規則。

例如,如果監控代理程式的metrics_filter部分如下所示:

metrics_filter:
  - include: metricA.*
  - exclude: metricA.*
  - include: metricB.*
  - include: haproxy.backend.*
  - exclude: haproxy.*
  - exclude: metricC.*
  • 您正在設定監控代理程式以收集以metricAmetricBhaproxy.backend開頭的指標中的所有資料。
  • 您正在過濾掉開頭為 metricC 的度量值,以及其他開頭為 haproxy 的度量值。
  • 忽略 exclude: metricA.* 項目。

變更記載層次

若要配置記載層次,您必須自訂 dragent.yaml 檔中的 log 區段。

監控代理程式在*/opt/draios/logs/draios.log*中產生日誌條目。

  • 日誌檔在大小達到 10MB 時即會替換。
  • 保留 10 個最近的日誌檔。 附加至檔名的日期戳記是用來決定要保留哪些檔案。
  • 有效的記載層次為:noneerrorwarninginfodebugtrace
  • 預設記載層次為 info,其中除了任何警告及錯誤的項目外,每次將聚集的度量傳輸至後端伺服器時都會建立一個項目,每秒一次。
  • 您可以透過設定監控代理程式設定檔 /opt/draios/etc/dragent.yaml 來自訂日誌類型和收集的條目。 在編輯檔案之後,必須使用 service dragent restart 在 Shell 上重新啟動代理程式,才能啟動變更。
日誌部分條目
使用案例 日誌區段項目
疑難排解代理程式行為 file_priority: debug
減少容器主控台輸出 console_priority: warning
依嚴重性過濾事件 event_priority: warning
驗證包括或排除哪些度量 metrics_excess_log: true