將 Config Sync 指標傳送至自訂監控系統

本頁說明如何將 Config Sync 的指標傳送至自訂 OpenTelemetry 匯出工具。

Config Sync 會使用 OpenCensus 建立及記錄指標,並使用 OpenTelemetry 匯出指標。本頁說明如何將這些指標設定為自訂匯出工具。如要瞭解其他匯出指標的方式,請參閱「使用 Cloud Monitoring 監控 Config Sync」或「使用 Prometheus 監控 Config Sync」。

設定自訂 OpenTelemetry 匯出工具

如要將指標傳送至 Prometheus 或 Cloud Monitoring 以外的監控系統,可以修改 OpenTelemetry 設定。如需支援的監控系統清單,請參閱 OpenTelemetry Collector 匯出工具OpenTelemetry Collector-Contrib 匯出工具

OpenTelemetry 監控資源是在獨立的 config-management-monitoring 命名空間中管理。如要設定自訂 OpenTelemetry 匯出工具,以便與 Config Sync 搭配使用,您必須在 config-management-monitoring 命名空間中建立名為 otel-collector-custom 的 ConfigMap。ConfigMap 應包含 otel-collector-config.yaml 鍵,且值應為自訂 OpenTelemetry Collector 設定的檔案內容。如要進一步瞭解設定選項,請參閱 OpenTelemetry Collector 設定說明文件

以下 ConfigMap 範例包含自訂記錄匯出工具:

# otel-collector-custom-cm.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: otel-collector-custom
  namespace: config-management-monitoring
  labels:
    app: opentelemetry
    component: otel-collector
data:
  otel-collector-config.yaml: |
    receivers:
      opencensus:
    exporters:
      logging:
        logLevel: debug
    processors:
      batch:
    extensions:
      health_check:
    service:
      extensions: [health_check]
      pipelines:
        metrics:
          receivers: [opencensus]
          processors: [batch]
          exporters: [logging]

所有自訂設定都必須定義 opencensus 接收器和 metrics 管道。其餘欄位為選用項目,可自行設定,但建議您加入 batch 處理器和健康狀態檢查擴充功能,如範例所示。

建立 ConfigMap 後,請使用 kubectl 建立資源:

kubectl apply -f otel-collector-custom-cm.yaml

OpenTelemetry Collector 部署作業會擷取這個 ConfigMap,並自動重新啟動以套用自訂設定。

限制

將 Config Sync 升級至新版本時,如果您為舊版建立 otel-collector-custom ConfigMap,自訂設定可能與新版 Config Sync 不相容。舉例來說,指標名稱、標籤和屬性可能會因 Config Sync 版本而異。

如果 Config Sync 指標有異動,我們會在版本資訊中公告。這些變更可能需要您更新自訂 otel-collector 設定。

由於這項限制,我們建議您只將自訂指標設定做為暫時的解決方法。如果發現需要使用自訂設定,請提出支援單,要求將解決方法做為功能或錯誤修正。