La pagina descrive come inviare metriche da Config Sync a un esportatore OpenTelemetry personalizzato.
Config Sync utilizza OpenCensus per creare e registrare le metriche e OpenTelemetry per esportarne le metriche. Questa pagina spiega come configurare queste metriche in un esportatore personalizzato. Per altri modi di esportare le metriche, consulta Monitorare Config Sync con Cloud Monitoring o Monitorare Config Sync con Prometheus.
Configura un esportatore OpenTelemetry personalizzato
Se vuoi inviare le metriche a un sistema di monitoraggio diverso da Prometheus o Cloud Monitoring, puoi modificare la configurazione OpenTelemetry. Per un elenco dei sistemi di monitoraggio supportati, consulta Esportatori OpenTelemetry Collector ed OpenTelemetry Collector-Contrib Exporter.
Le risorse di monitoraggio di OpenTelemetry sono gestite in uno spazio dei nomi config-management-monitoring
separato. Per configurare un programma di esportazione OpenTelemetry personalizzato da utilizzare con Config Sync, devi creare un ConfigMap con il nome otel-collector-custom
nello spazio dei nomi config-management-monitoring
.
Il ConfigMap deve contenere una chiave otel-collector-config.yaml
e il valore deve essere i contenuti del file della configurazione personalizzata di OpenTelemetry Collector.
Per ulteriori informazioni sulle opzioni di configurazione, consulta la documentazione di 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 ricevitore opencensus
e una pipeline
metrics
. Gli altri campi sono facoltativi e configurabili, ma ti consigliamo di includere un processore batch
e un'estensione per il controllo di integrità come nell'esempio.
Dopo aver creato un ConfigMap, utilizza kubectl
per creare la risorsa:
kubectl apply -f otel-collector-custom-cm.yaml
Il deployment OpenTelemetry Collector seleziona questo ConfigMap e lo riavvia automaticamente per applicare la configurazione personalizzata.
Limitazioni
Quando esegui l'upgrade di Config Sync a una nuova versione, se hai creato un oggetto ConfigMap otel-collector-custom
per una versione precedente, le impostazioni personalizzate potrebbero non essere compatibili con la nuova versione di Config Sync. Ad esempio, i nomi, le etichette e gli attributi delle metriche possono cambiare tra le versioni di Config Sync.
Le modifiche apportate alle metriche di Config Sync vengono annunciate nelle note di rilascio. Per queste modifiche potrebbe essere necessario
aggiornare la configurazione di otel-collector
personalizzata.
A causa di questa limitazione, ti consigliamo di utilizzare configurazioni di metriche personalizzate solo per soluzioni temporanee. Se ritieni di dover utilizzare una configurazione personalizzata, invia un ticket di assistenza per richiedere la soluzione alternativa come funzionalità o correzione di bug.