Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
OpenTelemetry Collectionneur
Le OpenTelemetry Collector est un agent open source indépendant du fournisseur qui reçoit, traite et exporte des données de télémétrie. Il agit comme un pipeline central entre vos applications et Amazon CloudWatch, en collectant des métriques, des journaux et des traces provenant de plusieurs sources et en les envoyant CloudWatch via le OpenTelemetry protocole OTLP (OTLP).
L'utilisation du OpenTelemetry Collector CloudWatch offre les avantages suivants :
-
Collectez les données télémétriques de plusieurs applications et hôtes via un seul agent, réduisant ainsi le nombre de connexions à. CloudWatch
-
Traitez et filtrez la télémétrie avant de l'envoyer à CloudWatch, notamment en ajoutant ou en supprimant des attributs, en groupant les données et en échantillonnant les traces.
-
Utilisez la même configuration de collecteur dans tous les environnements cloud AWS, sur site et dans d'autres environnements cloud, afin de fournir un pipeline de télémétrie cohérent quel que soit l'endroit où vos applications s'exécutent.
-
Envoyez des métriques à CloudWatch avec des libellés enrichis qui peuvent être interrogés à l'aide du langage de requête Prometheus (ProMQL) dans Query Studio. CloudWatch
Récepteurs compatibles
Le OpenTelemetry Collector prend en charge une large gamme de récepteurs pour l'ingestion de données de télémétrie. Vous pouvez utiliser des OpenTelemetry récepteurs tels que le récepteur OTLP pour les applications instrumentées OpenTelemetry SDKs ou les récepteurs Prometheus pour extraire les métriques des exportateurs Prometheus existants. Les récepteurs Prometheus couramment utilisés sont les suivants : CloudWatch
-
Récepteur Prometheus, pour gratter n'importe quel terminal compatible avec Prometheus
-
Récepteur Host Metrics, pour collecter des métriques au niveau du système auprès de l'hôte
-
Récepteur Kubernetes Cluster, pour collecter des métriques au niveau du cluster à partir du serveur d'API Kubernetes
Vous pouvez configurer plusieurs récepteurs dans un seul collecteur, ce qui vous permet de collecter à la fois les métriques OpenTelemetry et celles de Prometheus et de les CloudWatch envoyer via le même pipeline. Pour la liste complète des récepteurs disponibles, consultez le référentiel OpenTelemetry
Prise en main
Prérequis — Si vous utilisez le point de terminaison OTLP pour le suivi, assurez-vous que la recherche de transactions est activée.
Étapes :
-
Téléchargez la dernière version de la distribution OpenTelemetry Collector. Pour plus d'informations, consultez les versions OpenTelemetry
Collector. -
Installez le OpenTelemetry collecteur sur votre hôte. Le collecteur fonctionne sur tous les systèmes d'exploitation et toutes les plateformes. Pour plus d’informations, consultez Installer le Collector
. -
Configurez les AWS informations d'identification sur votre hôte Amazon EC2 ou sur site. Le collecteur utilise ces informations d'identification pour s'authentifier CloudWatch lors de l'envoi de données de télémétrie. Voir ci-dessous pour plus de détails.
-
Configurez les AWS informations d'identification pour vos clusters Amazon EKS ou Kubernetes. Le moyen le plus simple de démarrer avec Amazon EKS est d'utiliser le module complémentaire EKS OTel Container Insights. Si vous préférez utiliser directement le OpenTelemetry collecteur, suivez la procédure ci-dessous pour configurer les AWS informations d'identification de vos clusters Amazon EKS ou Kubernetes auxquels envoyer des données de télémétrie. CloudWatch
-
Configurez l'exportateur OTLP dans la configuration de votre collecteur pour envoyer la télémétrie au point de terminaison. CloudWatch Consultez les exemples ci-dessous.
Exemples de configuration de collecteurs
Copiez et collez le contenu ci-dessous pour configurer votre collecteur afin qu’il envoie les journaux et les traces aux points de terminaison OTLP.
receivers: otlp: protocols: grpc: endpoint: 0.0.0.0:4317 http: endpoint: 0.0.0.0:4318 exporters: otlphttp/logs: compression: gzip logs_endpoint:logs_otlp_endpointheaders: x-aws-log-group: ency_log_group x-aws-log-stream: default auth: authenticator: sigv4auth/logs otlphttp/traces: compression: gzip traces_endpoint:traces_otlp_endpointauth: authenticator: sigv4auth/traces extensions: sigv4auth/logs: region: "region" service: "logs" sigv4auth/traces: region: "region" service: "xray" service: telemetry: extensions: [sigv4auth/logs, sigv4auth/traces] pipelines: logs: receivers: [otlp] exporters: [otlphttp/logs] traces: receivers: [otlp] exporters: [otlphttp/traces]
Voici un exemple d’envoi de journaux et de traces à l’aide de sigv4 vers us-east-1.
receivers: otlp: protocols: grpc: endpoint: 0.0.0.0:4317 http: endpoint: 0.0.0.0:4318 exporters: otlphttp/logs: compression: gzip logs_endpoint: https://logs.us-east-1.amazonaws.com/v1/logs headers: x-aws-log-group: MyApplicationLogs x-aws-log-stream: default auth: authenticator: sigv4auth/logs otlphttp/traces: compression: gzip traces_endpoint: https://xray.us-east-1.amazonaws.com/v1/traces auth: authenticator: sigv4auth/traces extensions: sigv4auth/logs: region: "us-east-1" service: "logs" sigv4auth/traces: region: "us-east-1" service: "xray" service: telemetry: extensions: [sigv4auth/logs, sigv4auth/traces] pipelines: logs: receivers: [otlp] exporters: [otlphttp/logs] traces: receivers: [otlp] exporters: [otlphttp/traces]
Note
Configurez votre configuration OpenTelemetry SDKs d'échantillonnage permanent pour enregistrer de manière fiable 100 % des plages et obtenir une visibilité complète sur vos applications critiques grâce aux CloudWatch signaux d'application. Pour plus d'informations, consultez un exemple de configuration d'échantillonneur du SDK OpenTelemetry Java
Copiez et collez le contenu ci-dessous pour configurer votre collecteur afin qu'il envoie des métriques aux points de terminaison OTLP.
receivers: otlp: protocols: http: endpoint: "0.0.0.0:4318" processors: batch: send_batch_size: 200 timeout: 10s exporters: otlphttp: tls: insecure: false endpoint:metrics_otlp_endpointauth: authenticator: sigv4auth extensions: sigv4auth: service: "monitoring" region: "region" service: extensions: [sigv4auth] pipelines: metrics: receivers: [otlp] processors: [batch] exporters: [otlphttp]
Voici un exemple d'envoi de métriques à l'aide de sigv4 à us-east-1.
receivers: otlp: protocols: http: endpoint: "0.0.0.0:4318" processors: batch: send_batch_size: 200 timeout: 10s exporters: otlphttp: tls: insecure: false endpoint: "https://monitoring.us-east-1.amazonaws.com/v1/metrics:443" auth: authenticator: sigv4auth extensions: sigv4auth: service: "monitoring" region: "us-east-1" service: extensions: [sigv4auth] pipelines: metrics: receivers: [otlp] processors: [batch] exporters: [otlphttp]