Utilizzo di una pipeline di OpenSearch ingestione con Collector OpenTelemetry - OpenSearch Servizio Amazon

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo di una pipeline di OpenSearch ingestione con Collector OpenTelemetry

Puoi usare OpenTelemetry Collector per inserire log, tracce e metriche nelle pipeline di Ingestion. OpenSearch È possibile utilizzare una singola pipeline per importare tutti i log, le tracce e le metriche in diversi indici di un dominio o di una raccolta. Puoi anche utilizzare le pipeline per importare solo log, tracce o metriche singolarmente.

Prerequisiti

Durante la configurazione del file di OpenTelemetry configurazione, è necessario configurare quanto segue affinché avvenga l'ingestione:

  • Il ruolo di importazione richiede l'osis:Ingestautorizzazione per interagire con la pipeline. Per ulteriori informazioni, consulta Ingestion role.

  • Il valore dell'endpoint deve includere l'endpoint della pipeline. Ad esempio, https://pipeline-endpoint.us-east-1.osis.amazonaws.com.

  • Il valore del servizio deve essere. osis

  • L'opzione di compressione per OTLP/HTTP Exporter deve corrispondere all'opzione di compressione sulla sorgente selezionata della 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]

Fase 1: Configurare il ruolo della pipeline

Dopo aver impostato la configurazione del OpenTelemetry raccoglitore, imposta il ruolo della pipeline che desideri utilizzare nella configurazione della pipeline. Il ruolo pipeline non richiede autorizzazioni specifiche per l'origine OTLP, ma solo autorizzazioni per concedere alle pipeline l'accesso al dominio o alla raccolta. OpenSearch

Fase 2: Creare la pipeline

È quindi possibile configurare una pipeline OpenSearch di ingestione come la seguente, che specifica OTLP come origine. È inoltre possibile configurare OpenTelemetry log, metriche e tracce come fonti individuali.

Configurazione della pipeline di origine 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 Registra la configurazione della pipeline:

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 Configurazione della pipeline delle metriche:

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 Configurazione della pipeline di 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"

È possibile utilizzare un blueprint preconfigurato per creare questa pipeline. Per ulteriori informazioni, consulta Lavorare con i progetti.

Connettività tra account

OpenSearch Le pipeline di ingestione con OpenTelemetry sorgenti hanno una capacità di ingestione tra account. Amazon OpenSearch Ingestion ti consente di condividere le pipeline Account AWS da un cloud privato virtuale (VPC) a un endpoint di pipeline in un VPC separato. Per ulteriori informazioni, consulta Configurazione delle pipeline OpenSearch di ingestione per l'ingestione tra account.

Limitazioni

La pipeline OpenSearch Ingestion non può ricevere richieste superiori a 20 MB. Questo valore è configurato dall'utente nell'opzione. max_request_length Il valore predefinito di questa opzione è 10 MB.

Allarmi consigliati CloudWatch per le fonti OpenTelemetry

Le seguenti CloudWatch metriche sono consigliate per monitorare le prestazioni della pipeline di ingestione. Queste metriche possono aiutarti a identificare la quantità di dati elaborati dalle esportazioni, la quantità di eventi elaborati dagli stream, gli errori nell'elaborazione delle esportazioni e degli eventi di streaming e il numero di documenti scritti nella destinazione. È possibile impostare CloudWatch allarmi per eseguire un'azione quando una di queste metriche supera un valore specificato per un determinato periodo di tempo.

Le CloudWatch metriche per la sorgente OTLP sono formattate come. {pipeline-name}.otlp.{logs | traces | metrics}.{metric-name} Ad esempio, otel-pipeline.otlp.metrics.requestTimeouts.count.

Nel caso di utilizzo di una singola OpenTelemetry fonte, le metriche verranno formattate come. {pipeline-name}.{source-name}.{metric-name} Ad esempio, trace-pipeline.otel_trace_source.requestTimeouts.count.

Tutti e tre OpenTelemetry i tipi di dati avranno le stesse metriche, ma per brevità le metriche verranno elencate solo nella tabella seguente per i dati di tipo di registro di origine OTLP.

Metrica Description
otel-pipeline.BlockingBuffer.bufferUsage.value

Indica la quantità di buffer utilizzata.

otel-pipeline.otlp.logs.requestTimeouts.count

Il numero di richieste scadute.

otel-pipeline.otlp.logs.requestsReceived.count

Il numero di richieste ricevute dal OpenTelemetry Collector.

otel-pipeline.otlp.logs.badRequests.count

Il numero di richieste non corrette ricevute dal Collector. OpenTelemetry

otel-pipeline.otlp.logs.requestsTooLarge.count

Il numero di richieste superiore al massimo di 20 MB ricevute dal Collector. OpenTelemetry

otel-pipeline.otlp.logs.internalServerError.count Il numero di errori HTTP 500 ricevuti dal Collector. OpenTelemetry
otel-pipeline.opensearch.bulkBadRequestErrors.count Numero di errori durante le richieste in blocco a causa di una richiesta non valida.
otel-pipeline.opensearch.bulkRequestLatency.avg Latenza media per le richieste di scrittura in blocco effettuate a. OpenSearch
otel-pipeline.opensearch.bulkRequestNotFoundErrors.count Numero di richieste in blocco non riuscite perché non è stato possibile trovare i dati di destinazione.
otel-pipeline.opensearch.bulkRequestNumberOfRetries.count Numero di tentativi di scrittura del cluster da parte delle pipeline di OpenSearch Ingestion. OpenSearch
otel-pipeline.opensearch.bulkRequestSizeBytes.sum Dimensione totale in byte di tutte le richieste in blocco effettuate a. OpenSearch
otel-pipeline.opensearch.documentErrors.count Numero di errori durante l'invio di documenti a. OpenSearch I documenti che causano gli errori verranno inviati a DLQ.
otel-pipeline.opensearch.documentsSuccess.count Numero di documenti scritti correttamente in un OpenSearch cluster o in una raccolta.
otel-pipeline.opensearch.documentsSuccessFirstAttempt.count Numero di documenti indicizzati correttamente OpenSearch al primo tentativo.

otel-pipeline.opensearch.documentsVersionConflictErrors.count

Numero di errori dovuti a conflitti di versione nei documenti durante l'elaborazione.

otel-pipeline.opensearch.PipelineLatency.avg

Latenza media della pipeline di OpenSearch Ingestion per l'elaborazione dei dati dalla lettura dall'origine alla scrittura nella destinazione.
otel-pipeline.opensearch.PipelineLatency.max Latenza massima della pipeline di OpenSearch Ingestion per elaborare i dati leggendo dall'origine alla scrittura della destinazione.
otel-pipeline.opensearch.recordsIn.count Numero di record in cui sono stati inseriti con successo. OpenSearch Questa metrica è essenziale per tenere traccia del volume di dati elaborati e archiviati.
otel-pipeline.opensearch.s3.dlqS3RecordsFailed.count Numero di record che non sono stati scritti su DLQ.
otel-pipeline.opensearch.s3.dlqS3RecordsSuccess.count Numero di record scritti su DLQ.
otel-pipeline.opensearch.s3.dlqS3RequestLatency.count Conteggio delle misurazioni della latenza per le richieste alla coda di lettere morte di Amazon S3.
otel-pipeline.opensearch.s3.dlqS3RequestLatency.sum Latenza totale per tutte le richieste alla coda di lettera morta di Amazon S3
otel-pipeline.opensearch.s3.dlqS3RequestSizeBytes.sum Dimensione totale in byte di tutte le richieste effettuate alla coda di lettere morte di Amazon S3.
otel-pipeline.recordsProcessed.count Numero totale di record elaborati nella pipeline, una metrica chiave per il throughput complessivo.

otel-pipeline.opensearch.bulkRequestInvalidInputErrors.count

Conteggio degli errori nelle richieste di massa OpenSearch dovuti a input non validi, fondamentale per il monitoraggio della qualità dei dati e dei problemi operativi.