Cette page explique comment envoyer des métriques depuis Config Sync vers un exportateur OpenTelemetry personnalisé.
Config Sync utilise OpenCensus pour créer et enregistrer des métriques, et OpenTelemetry pour les exporter. Cette page explique comment configurer ces métriques vers un exportateur personnalisé. Pour découvrir d'autres moyens d'exporter des métriques, consultez la page Surveiller Config Sync avec Cloud Monitoring ou Surveiller Config Sync avec Prometheus.
Configurer un exportateur OpenTelemetry personnalisé
Si vous souhaitez envoyer vos métriques à un système de surveillance autre que Prometheus ou Cloud Monitoring, vous pouvez modifier la configuration d'OpenTelemetry. Pour obtenir la liste des systèmes de surveillance compatibles, consultez les pages relatives aux exportateurs OpenTelemetry Collector et aux exportateurs OpenTelemetry Collector-Contrib.
Les ressources de surveillance OpenTelemetry sont gérées dans un espace de noms config-management-monitoring
distinct. Pour configurer un exportateur OpenTelemetry personnalisé à utiliser avec Config Sync, vous devez créer un fichier ConfigMap nommé otel-collector-custom
dans cet espace de noms config-management-monitoring
.
Le fichier ConfigMap doit contenir une clé otel-collector-config.yaml
et sa valeur doit correspondre au contenu du fichier de configuration personnalisée d'OpenTelemetry.
Pour en savoir plus sur les options de configuration, consultez la documentation sur la configuration d'OpenTelemetry Collector.
Le fichier ConfigMap suivant est un exemple de ConfigMap avec un exportateur de journalisation personnalisé :
# 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]
Toutes les configurations personnalisées doivent définir un récepteur opencensus
et un pipeline metrics
. Les autres champs sont facultatifs et configurables, mais nous vous recommandons d'inclure un processeur batch
et une extension de vérification d'état, comme dans l'exemple.
Après avoir créé le ConfigMap, utilisez kubectl
pour créer la ressource :
kubectl apply -f otel-collector-custom-cm.yaml
Le déploiement de l'OpenTelemetry Collector récupère ce ConfigMap et redémarre automatiquement pour appliquer la configuration personnalisée.
Limites
Lorsque vous mettez à niveau Config Sync vers une nouvelle version, si vous avez créé une ConfigMap otel-collector-custom
pour une version précédente, vos paramètres personnalisés peuvent ne pas être compatibles avec la nouvelle version de Config Sync. Par exemple, les noms, libellés et attributs des métriques peuvent changer entre les versions de Config Sync.
Lorsque des modifications sont apportées aux métriques Config Sync, elles sont annoncées dans les notes de version. Ces modifications peuvent vous obliger à mettre à jour votre configuration otel-collector
personnalisée.
En raison de cette limitation, nous vous recommandons de n'utiliser les configurations de métriques personnalisées que pour des solutions temporaires. Si vous devez utiliser une configuration personnalisée, envoyez une demande d'assistance pour demander la solution de contournement en tant que fonctionnalité ou correction de bug.