Invia le metriche di Config Sync a un sistema di monitoraggio personalizzato

La pagina descrive come inviare le metriche da Config Sync a un Esportatore OpenTelemetry.

Config Sync utilizza OpenCensus per creare e registrare metriche e OpenTelemetry per esportare le relative metriche. Questa pagina spiega come configurare queste metriche in un esportatore personalizzato. Per altri modi per esportare le metriche, consulta Monitora Config Sync con Cloud Monitoring o Monitora Config Sync con Prometheus.

Configurare un esportatore OpenTelemetry personalizzato

Se vuoi inviare le metriche a un sistema di monitoraggio diverso da Prometheus o Cloud Monitoring, puoi modificare la configurazione di OpenTelemetry. Per una lista sistemi di monitoraggio supportati, Esportatori per la raccolta OpenTelemetry e gli esportatori di OpenTelemetry Collector-Contrib.

Le risorse di monitoraggio di OpenTelemetry vengono gestite in uno spazio dei nomiconfig-management-monitoring separato. Per configurare un esportatore OpenTelemetry personalizzato da utilizzare con Config Sync, devi creare un ConfigMap con il nome otel-collector-custom nell'namespace config-management-monitoring. Il ConfigMap deve contenere una chiave otel-collector-config.yaml e il valore deve essere costituito dai contenuti del file della configurazione personalizzata di OpenTelemetry Collector. Per ulteriori informazioni sulle opzioni di configurazione, consulta Documentazione sulla configurazione di OpenTelemetry Collector.

Il seguente ConfigMap è un esempio di ConfigMap con un esportatore di log personalizzato:

# 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]

Tutte le configurazioni personalizzate devono definire un opencensusdestinatario e una metrics pipeline. Gli altri campi sono facoltativi e configurabili, ma consigliamo di includere un processore batch e un'estensione per il controllo di integrità come nelle esempio.

Dopo aver creato un ConfigMap, utilizza kubectl per creare la risorsa:

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

Il deployment del collector OpenTelemetry rileva questo ConfigMap e si riavvia automaticamente per applicare la configurazione personalizzata.

Limitazioni

Quando esegui l'upgrade di Config Sync a una nuova versione, se hai creato un ConfigMapotel-collector-custom per una versione precedente, le impostazioni personalizzate potrebbero non essere compatibili con la nuova versione di Config Sync. Per Ad esempio, i nomi, le etichette e gli attributi delle metriche possono cambiare Versioni di Config Sync.

Quando vengono apportate modifiche alle metriche di Config Sync, queste vengono annunciate nelle note di rilascio. Queste modifiche potrebbero richiedere di aggiornare la configurazione otel-collector personalizzata.

A causa di questa limitazione, consigliamo di utilizzare solo metriche personalizzate configurazioni per soluzioni temporanee. Se ritieni di dover utilizzare un modello configurazione, invia un ticket di assistenza per richiedere la soluzione alternativa la funzionalità o la correzione di un bug.