Collecte de métriques et de suivis avec OpenTelemetry - Amazon CloudWatch

Collecte de métriques et de suivis avec OpenTelemetry

Vous pouvez collecter des métriques et des suivis à partir de vos applications ou services à l’aide de l’agent CloudWatch et du protocole OTLP (OpenTelemetry Protocol), une solution open source populaire. Vous pouvez utiliser n’importe quel kit SDK OpenTelemetry pour envoyer des métriques et des suivis à l’agent CloudWatch. Pour plus d’informations sur les kits SDK OpenTelemetry disponibles, consultez API et kits SDK de langage pris en charge par OpenTelemetry.

Pour collecter des métriques et des suivis OpenTelemetry, ajoutez une section otlp au fichier de configuration de l’agent CloudWatch. La section inclut les champs suivants :

  • grpc_endpoint : facultatif. Indique l’adresse que l’agent CloudWatch doit utiliser pour écouter les suivis OpenTelemetry envoyées à l’aide des appels de procédure distante gRPC. Le format est ip:port. Cette adresse doit correspondre à l'adresse définie pour l'exportateur gRPC dans le kit SDK OpenTelemetry. Si vous omettez ce champ, la valeur par défaut de 127.0.0.1:4317 est utilisée.

  • http_endpoint : facultatif. Indique l’adresse que l’agent CloudWatch doit utiliser pour écouter les métriques ou suivis OpenTelemetry envoyées via HTTP. Le format est ip:port. Cette adresse doit correspondre à l'adresse définie pour l'exportateur HTTP dans le kit SDK OpenTelemetry. Si vous omettez ce champ, la valeur par défaut de 127.0.0.1:4318 est utilisée.

  • tls : facultatif. Indique que le serveur doit être configuré avec TLS.

    • cert_file : chemin d’accès au certificat TLS à utiliser pour les connexions nécessitant TLS.

    • key_file : chemin d’accès à la clé TLS à utiliser pour les connexions nécessitant TLS.

La section otlp peut être placée dans plusieurs sections du fichier de configuration de l’agent CloudWatch, selon la manière et l’endroit où vous souhaitez envoyer les métriques et les suivis.

Important

Chaque section otlp nécessite un point de terminaison et un port uniques. Pour plus d’informations détaillées sur la séparation des points de terminaison des métriques et des suivis, consultez Configuration d’OTLP Exporter dans la documentation du kit SDK OpenTelemetry.

Pour envoyer des métriques à CloudWatch ou à Amazon Managed Service pour Prometheus, ajoutez la section otlp sous metrics_collected dans la section metrics. Pour plus d’informations sur l’envoi des métriques vers différentes destinations, consultez Création ou édition manuelle du fichier de configuration d'agent CloudWatch. L’exemple suivant montre une configuration envoyant des métriques vers CloudWatch :

Note

Si vous exécutez l’agent dans un environnement conteneurisé et que vous envoyez la télémétrie depuis l’extérieur du réseau du conteneur de l’agent, assurez-vous de spécifier le point de terminaison comme 0.0.0.0 au lieu du point de terminaison par défaut 127.0.0.1.

{ "metrics": { "metrics_collected": { "otlp": { "grpc_endpoint": "127.0.0.1:4317", "http_endpoint": "127.0.0.1:4318" } } } }

Pour envoyer des métriques vers Amazon CloudWatch Logs en utilisant le format EMF (Embedded Metric Format), ajoutez la section otlp sous metrics_collected dans la section logs. Par défaut, les journaux EMF sont envoyés vers le groupe de journaux /aws/cwagent et un flux de journaux généré automatiquement. Par défaut, les métriques sont extraites dans l’espace de noms CWAgent. L’exemple suivant montre une configuration envoyant des métriques sous forme de journaux EMF vers CloudWatch Logs :

{ "logs": { "metrics_collected": { "otlp": { "grpc_endpoint": "127.0.0.1:4317", "http_endpoint": "127.0.0.1:4318" } } } }

Pour envoyer des suivis vers AWS X-Ray, ajoutez la section otlp sou traces_collected dans la section traces. L’exemple suivant montre une configuration envoyant des suivis vers X-Ray :

{ "traces": { "traces_collected": { "otlp": { "grpc_endpoint": "127.0.0.1:4317", "http_endpoint": "127.0.0.1:4318" } } } }