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.
Utilisation d'un pipeline OpenSearch d'ingestion avec OpenTelemetry Collector
Vous pouvez utiliser le OpenTelemetry Collector
Rubriques
Conditions préalables
Lors de la OpenTelemetry configuration du fichier
-
Le rôle d'ingestion doit être
osis:Ingestautorisé à interagir avec le pipeline. Pour plus d'informations, consultez la section Rôle d'ingestion. -
La valeur du point de terminaison doit inclure le point de terminaison de votre pipeline. Par exemple,
https://pipeline-endpoint.us-east-1.osis.amazonaws.com. -
La valeur du service doit être
osis. -
L'option de compression pour l' OTLP/HTTP exportateur doit correspondre à l'option de compression de la source sélectionnée pour le pipeline.
extensions: sigv4auth: region: "region" service: "osis" exporters: otlphttp: logs_endpoint: "https://pipeline-endpoint.us-east-1.osis.amazonaws.com/v1/logs" metrics_endpoint: "https://pipeline-endpoint.us-east-1.osis.amazonaws.com/v1/metrics" traces_endpoint: "https://pipeline-endpoint.us-east-1.osis.amazonaws.com/v1/traces" auth: authenticator: sigv4auth compression: none service: extensions: [sigv4auth] pipelines: traces: receivers: [jaeger] exporters: [otlphttp]
Étape 1 : configurer le rôle du pipeline
Après avoir configuré la configuration du OpenTelemetry collecteur, configurez le rôle de pipeline que vous souhaitez utiliser dans la configuration de votre pipeline. Le rôle de pipeline n'a pas besoin d'autorisations spécifiques pour la source OTLP, mais uniquement d'autorisations pour accorder aux pipelines l'accès au OpenSearch domaine ou à la collection.
Étape 2 : Création du pipeline
Vous pouvez ensuite configurer un pipeline d' OpenSearch ingestion comme le suivant, qui spécifie OTLP comme source. Vous pouvez également configurer les OpenTelemetry journaux, les métriques et les traces en tant que sources individuelles.
Configuration du pipeline source OTLP :
version: 2 otlp-pipeline: source: otlp: logs_path: /otlp-pipeline/v1/logs traces_path: /otlp-pipeline/v1/traces metrics_path: /otlp-pipeline/v1/metrics sink: - opensearch: hosts: ["https://search-mydomain.region.es.amazonaws.com"] index: "ss4o_metrics-otel-%{yyyy.MM.dd}" index_type: custom aws: region: "region"
OpenTelemetry Configuration du pipeline de journaux :
version: 2 otel-logs-pipeline: source: otel_logs_source: path: /otel-logs-pipeline/v1/logs sink: - opensearch: hosts: ["https://search-mydomain.region.es.amazonaws.com"] index: "ss4o_metrics-otel-%{yyyy.MM.dd}" index_type: custom aws: region: "region"
OpenTelemetry Configuration du pipeline de métriques :
version: 2 otel-metrics-pipeline: source: otel_metrics_source: path: /otel-metrics-pipeline/v1/metrics sink: - opensearch: hosts: ["https://search-mydomain.region.es.amazonaws.com"] index: "ss4o_metrics-otel-%{yyyy.MM.dd}" index_type: custom aws: region: "region"
OpenTelemetry Configuration du pipeline de traces :
version: 2 otel-trace-pipeline: source: otel_trace_source: path: /otel-traces-pipeline/v1/traces sink: - opensearch: hosts: ["https://search-mydomain.region.es.amazonaws.com"] index: "ss4o_metrics-otel-%{yyyy.MM.dd}" index_type: custom aws: region: "region"
Vous pouvez utiliser un plan préconfiguré pour créer ce pipeline. Pour de plus amples informations, veuillez consulter Travailler avec des plans.
Connectivité entre comptes
OpenSearch Les pipelines d'ingestion avec OpenTelemetry des sources ont une capacité d'ingestion entre comptes. Amazon OpenSearch Ingestion vous permet de partager des pipelines entre Comptes AWS un cloud privé virtuel (VPC) et un point de terminaison de pipeline dans un VPC distinct. Pour de plus amples informations, veuillez consulter Configuration des pipelines OpenSearch d'ingestion pour l'ingestion entre comptes.
Limitations
Le pipeline OpenSearch d'ingestion ne peut recevoir aucune demande supérieure à 20 Mo. Cette valeur est configurée par l'utilisateur dans l'max_request_lengthoption. La valeur par défaut de cette option est de 10 Mo.
CloudWatch Alarmes recommandées pour les OpenTelemetry sources
Les CloudWatch mesures suivantes sont recommandées pour surveiller les performances de votre pipeline d'ingestion. Ces indicateurs peuvent vous aider à identifier la quantité de données traitées à partir des exportations, le nombre d'événements traités à partir des flux, les erreurs lors du traitement des exportations et des événements des flux, ainsi que le nombre de documents écrits vers la destination. Vous pouvez configurer des CloudWatch alarmes pour effectuer une action lorsque l'une de ces mesures dépasse une valeur spécifiée pendant une durée spécifiée.
Les CloudWatch métriques de la source OTLP sont formatées comme suit. {pipeline-name}.otlp.{logs | traces | metrics}.{metric-name} Par exemple, otel-pipeline.otlp.metrics.requestTimeouts.count.
Dans le cas de l'utilisation d'une OpenTelemetry source individuelle, les métriques seront formatées comme {pipeline-name}.{source-name}.{metric-name} suit. Par exemple, trace-pipeline.otel_trace_source.requestTimeouts.count.
OpenTelemetry Les trois types de données auront les mêmes métriques, mais par souci de concision, celles-ci ne seront répertoriées dans le tableau ci-dessous que pour les données de type journal source OTLP.
| Métrique | Description |
|---|---|
otel-pipeline.BlockingBuffer.bufferUsage.value |
Indique la quantité de mémoire tampon utilisée. |
otel-pipeline.otlp.logs.requestTimeouts.count
|
Le nombre de demandes dont le délai a expiré. |
otel-pipeline.otlp.logs.requestsReceived.count
|
Le nombre de demandes reçues par le OpenTelemetry collecteur. |
otel-pipeline.otlp.logs.badRequests.count
|
Le nombre de demandes mal formées reçues par le OpenTelemetry collecteur. |
otel-pipeline.otlp.logs.requestsTooLarge.count
|
Le nombre de demandes supérieures au maximum de 20 Mo reçues par le OpenTelemetry collecteur. |
otel-pipeline.otlp.logs.internalServerError.count
|
Le nombre d'erreurs HTTP 500 reçues du OpenTelemetry collecteur. |
otel-pipeline.opensearch.bulkBadRequestErrors.count
|
Nombre d'erreurs lors de demandes groupées dues à une demande mal formée. |
otel-pipeline.opensearch.bulkRequestLatency.avg
|
Latence moyenne pour les demandes d'écriture en masse adressées à OpenSearch. |
otel-pipeline.opensearch.bulkRequestNotFoundErrors.count
|
Nombre de demandes groupées qui ont échoué car les données cibles sont introuvables. |
otel-pipeline.opensearch.bulkRequestNumberOfRetries.count
|
Nombre de tentatives effectuées par les pipelines OpenSearch d'ingestion pour écrire un OpenSearch cluster. |
otel-pipeline.opensearch.bulkRequestSizeBytes.sum
|
Taille totale en octets de toutes les demandes groupées adressées à OpenSearch. |
otel-pipeline.opensearch.documentErrors.count
|
Nombre d'erreurs lors de l'envoi de documents à OpenSearch. Les documents à l'origine des erreurs seront envoyés à DLQ. |
otel-pipeline.opensearch.documentsSuccess.count
|
Nombre de documents écrits avec succès dans un OpenSearch cluster ou une collection. |
otel-pipeline.opensearch.documentsSuccessFirstAttempt.count
|
Nombre de documents indexés avec succès OpenSearch lors de la première tentative. |
|
|
Nombre d'erreurs dues à des conflits de versions dans les documents pendant le traitement. |
|
|
Latence moyenne du pipeline d' OpenSearch ingestion pour traiter les données en lisant depuis la source jusqu'à l'écriture vers la destination. |
otel-pipeline.opensearch.PipelineLatency.max
|
Latence maximale du pipeline d' OpenSearch ingestion pour traiter les données en lisant depuis la source jusqu'à l'écriture de la destination. |
otel-pipeline.opensearch.recordsIn.count
|
Nombre d'enregistrements ingérés avec succès. OpenSearch Cette métrique est essentielle pour suivre le volume de données traitées et stockées. |
otel-pipeline.opensearch.s3.dlqS3RecordsFailed.count
|
Nombre d'enregistrements qui n'ont pas pu être écrits dans DLQ. |
otel-pipeline.opensearch.s3.dlqS3RecordsSuccess.count
|
Nombre d'enregistrements écrits dans DLQ. |
otel-pipeline.opensearch.s3.dlqS3RequestLatency.count
|
Nombre de mesures de latence pour les demandes adressées à la file d'attente des lettres mortes Amazon S3. |
otel-pipeline.opensearch.s3.dlqS3RequestLatency.sum
|
Latence totale pour toutes les demandes adressées à la file d'attente des lettres mortes Amazon S3 |
otel-pipeline.opensearch.s3.dlqS3RequestSizeBytes.sum
|
Taille totale en octets de toutes les demandes envoyées à la file d'attente de lettres mortes Amazon S3. |
otel-pipeline.recordsProcessed.count
|
Nombre total d'enregistrements traités dans le pipeline, indicateur clé du débit global. |
|
|
Nombre d'erreurs liées aux demandes groupées OpenSearch dues à une saisie non valide, crucial pour le suivi de la qualité des données et des problèmes opérationnels. |