

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à.

# Acquisizione della telemetria delle applicazioni
<a name="observability-ingestion"></a>

Per utilizzare le funzionalità di osservabilità in Amazon OpenSearch Service, devi importare tracce, log e metriche delle applicazioni. Questa pagina descrive la configurazione delle pipeline OpenTelemetry Collector e OpenSearch Ingestion per elaborare e instradare i dati di telemetria verso Amazon Managed Service for Prometheus. OpenSearch 

## OpenTelemetry Configurazione del Collector
<a name="observability-ingestion-otel"></a>

Il OpenTelemetry (OTel) Collector è il punto di ingresso per tutta la telemetria delle applicazioni. Riceve dati tramite OTLP e indirizza le tracce e i log verso OpenSearch Ingestion mentre invia le metriche a Prometheus.

È possibile configurare Collector utilizzando uno dei seguenti approcci: OTel 

 OTel Collector esporta tracce e log su un endpoint OpenSearch Ingestion utilizzando l'autenticazione SigV4 e i parametri su Amazon Managed Service for Prometheus utilizzando l'esportatore di scrittura remoto Prometheus. OpenSearch Ingestion gestisce l' OpenSearchelaborazione, l'arricchimento e il routing verso.

### OTel Configurazione del collettore con Ingestion OpenSearch
<a name="observability-ingestion-otel-osis"></a>

La seguente configurazione di esempio utilizza l'autenticazione SigV4 per esportare tracce e log su un endpoint OpenSearch Ingestion e le metriche su Prometheus:

```
extensions:
  sigv4auth:
    region: us-west-2
    service: osis

exporters:
  otlphttp/osis-traces:
    traces_endpoint: ${OSIS_ENDPOINT}/v1/traces
    auth: { authenticator: sigv4auth }
    compression: none
  otlphttp/osis-logs:
    logs_endpoint: ${OSIS_ENDPOINT}/v1/logs
    auth: { authenticator: sigv4auth }
    compression: none
  # Amazon Managed Service for Prometheus via Prometheus Remote Write with SigV4 auth
  prometheusremotewrite/amp:
    endpoint: "https://aps-workspaces.region.amazonaws.com/workspaces/workspace-id/api/v1/remote_write"
    auth:
      authenticator: sigv4auth

service:
  extensions: [sigv4auth]
  pipelines:
    traces:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlphttp/osis-traces]
    logs:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlphttp/osis-logs]
    metrics:
      receivers: [otlp]
      processors: [batch]
      exporters: [prometheusremotewrite/amp]
```

**Nota**  
Il principale IAM che invia i dati richiede l'`aps:RemoteWrite`autorizzazione `osis:Ingest` e l'autorizzazione sull'ARN della pipeline.

## Configurazione delle pipeline OpenSearch di ingestione
<a name="observability-ingestion-pipelines"></a>

OpenSearch Ingestion (o Data Prepper autogestito) riceve la telemetria dal Collector e la elabora per il OTel monitoraggio delle prestazioni delle applicazioni (APM).

### Architettura della pipeline
<a name="observability-ingestion-pipeline-arch"></a>

La pipeline elabora i dati di telemetria nelle seguenti fasi:

1. La pipeline di ingresso riceve tutta la telemetria e indirizza i registri e le tracce verso sotto-pipeline separate.

1. La pipeline di log scrive i dati di registro utilizzando il tipo di indice. OpenSearch `log-analytics-plain`

1. La pipeline di traccia distribuisce gli intervalli alla pipeline di archiviazione raw e alla pipeline della mappa dei servizi.

1. La pipeline di traccia non elaborata elabora i dati relativi al `otel_traces` processore e li memorizza nel tipo di indice. `trace-analytics-plain-raw`

1. La pipeline delle mappe dei servizi utilizza il `otel_apm_service_map` processore per generare la topologia e le metriche RED (Rate, Errors, Duration). Scrive da OpenSearch e verso Prometheus tramite scrittura remota.

### Configurazione della pipeline
<a name="observability-ingestion-pipeline-config"></a>

L'esempio seguente mostra una configurazione completa della pipeline per OpenSearch Ingestion che copre tutti i tipi di segnali di osservabilità: log, tracce e metriche. Puoi includere tutte le pipeline o solo quelle pertinenti al tuo caso d'uso. Sostituisci i *placeholder* valori con le tue informazioni.

```
version: '2'

# Main OTLP pipeline - receives all telemetry and routes by signal type
otlp-pipeline:
  source:
    otlp:
      logs_path: '/pipeline-name/v1/logs'
      traces_path: '/pipeline-name/v1/traces'
      metrics_path: '/pipeline-name/v1/metrics'
  route:
    - logs: 'getEventType() == "LOG"'
    - traces: 'getEventType() == "TRACE"'
    - metrics: 'getEventType() == "METRIC"'
  processor: []
  sink:
    - pipeline:
        name: otel-logs-pipeline
        routes:
          - logs
    - pipeline:
        name: otel-traces-pipeline
        routes:
          - traces
    - pipeline:
        name: otel-metrics-pipeline
        routes:
          - metrics

# Log processing pipeline
otel-logs-pipeline:
  source:
    pipeline:
      name: otlp-pipeline
  processor:
    - copy_values:
        entries:
          - from_key: "time"
            to_key: "@timestamp"
  sink:
    - opensearch:
        hosts:
          - 'https://opensearch-endpoint'
        index_type: log-analytics-plain
        aws:
          serverless: false
          region: 'region'
          sts_role_arn: "arn:aws:iam::account-id:role/pipeline-role"

# Trace fan-out pipeline
otel-traces-pipeline:
  source:
    pipeline:
      name: otlp-pipeline
  processor: []
  sink:
    - pipeline:
        name: traces-raw-pipeline
        routes: []
    - pipeline:
        name: service-map-pipeline
        routes: []

# Raw trace storage pipeline
traces-raw-pipeline:
  source:
    pipeline:
      name: otel-traces-pipeline
  processor:
    - otel_traces:
  sink:
    - opensearch:
        hosts:
          - 'https://opensearch-endpoint'
        index_type: trace-analytics-plain-raw
        aws:
          serverless: false
          region: 'region'
          sts_role_arn: "arn:aws:iam::account-id:role/pipeline-role"

# Service map generation pipeline (APM)
service-map-pipeline:
  source:
    pipeline:
      name: otel-traces-pipeline
  processor:
    - otel_apm_service_map:
        group_by_attributes:
          - telemetry.sdk.language # Add any resource attribute to group by
        window_duration: 30s
  route:
    - otel_apm_service_map_route: 'getEventType() == "SERVICE_MAP"'
    - service_processed_metrics: 'getEventType() == "METRIC"'
  sink:
    - opensearch:
        hosts:
          - 'https://opensearch-endpoint'
        aws:
          serverless: false
          region: 'region'
          sts_role_arn: "arn:aws:iam::account-id:role/pipeline-role"
        routes:
          - otel_apm_service_map_route
        index_type: otel-v2-apm-service-map
    - prometheus:
        url: 'https://aps-workspaces.region.amazonaws.com/workspaces/workspace-id/api/v1/remote_write'
        aws:
          region: 'region'
        routes:
          - service_processed_metrics

# Metrics processing pipeline
otel-metrics-pipeline:
  source:
    pipeline:
      name: otlp-pipeline
  processor:
    - otel_metrics:
  sink:
    - prometheus:
        url: 'https://aps-workspaces.region.amazonaws.com/workspaces/workspace-id/api/v1/remote_write'
        aws:
          region: 'region'
```

## Verifica dell'ingestione
<a name="observability-ingestion-verify"></a>

Dopo aver configurato OTel Collector e le pipeline, verifica che i dati di telemetria scorrano correttamente.
+ **Verifica OpenSearch gli indici**: verifica che nel tuo dominio siano presenti i seguenti indici:, e. `otel-v1-apm-span-*` `otel-v2-apm-service-map` `logs-otel-v1-*`
+ **Verifica degli obiettivi Prometheus**: verifica che il target di scrittura remoto Prometheus riceva le metriche dalla pipeline della mappa dei servizi.
+ **Verifica nell' OpenSearch interfaccia utente****: accedi a **Observability, quindi Application Monitoring** per confermare che i tuoi servizi vengano visualizzati.**

## Fasi successive
<a name="observability-ingestion-next"></a>

Dopo aver verificato che i dati di telemetria siano stati acquisiti, esplora i seguenti argomenti:
+ [Monitoraggio dell'applicazione](observability-app-monitoring.md)— Monitora lo stato delle applicazioni con mappe dei servizi e metriche RED.
+ [Scopri le tracce](observability-analyze-traces.md): scopri e analizza le tracce distribuite.
+ [Scopri i log](observability-analyze-logs.md): scopri e interroga i log delle applicazioni.
+ [Scopri le metriche](observability-metrics.md): scopri e interroga le metriche di Prometheus utilizzando PromQL.