

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

# Osservabilità in Amazon Service OpenSearch
<a name="observability"></a>

L'osservabilità è la pratica di comprendere lo stato interno e le prestazioni di sistemi complessi esaminandone i risultati. Il monitoraggio tradizionale indica che un sistema non funziona; l'osservabilità aiuta a capirne il motivo, consentendoti di porre nuove domande sui dati di telemetria.

## Cosa offre Amazon OpenSearch Service
<a name="observability-what"></a>

Amazon OpenSearch Service fornisce una soluzione di osservabilità unificata raccogliendo, correlando e visualizzando tre tipi di dati di telemetria:
+ **Registri**: registrazioni degli eventi con data e ora.
+ **Tracce**: End-to-end percorso delle richieste attraverso servizi distribuiti.
+ **Metriche**: serie temporali di dati che rappresentano lo stato del sistema, tramite l'integrazione diretta delle query di Amazon Managed Service for Prometheus.

Riunendoli in un'unica interfaccia, Amazon OpenSearch Service aiuta i team operativi e gli sviluppatori a rilevare, diagnosticare e risolvere i problemi più rapidamente. SREs

## L'approccio OpenSearch di Amazon Service all'osservabilità
<a name="observability-approach"></a>

Amazon OpenSearch Service si differenzia in tre modi principali:
+ **OpenTelemetry-nativo con OpenSearch Ingestion come ultimo miglio: standardizza la** strumentazione e la raccolta. OTel Amazon OpenSearch Ingestion funge da pipeline completamente gestita che filtra, arricchisce, trasforma e indirizza i dati di telemetria prima dell'indicizzazione.
+ **Registri, tracce e metriche unificati nell'interfaccia utente: analizza tutti e tre i tipi di segnale da un'unica area di lavoro di osservabilità OpenSearch **. Correla una traccia lenta ai registri delle applicazioni o sovrapponi le metriche di Prometheus alle dashboard dei tuoi servizi.
+ **Linguaggi di interrogazione orientati allo scopo**: utilizza il [Piped Processing Language (PPL](https://observability.opensearch.org/docs/ppl/)) per log e tracce e PromQL per le metriche. Ogni linguaggio è ottimizzato per il tipo di segnale corrispondente, offrendo interrogazioni espressive senza compromessi.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/otel-sdk-service.png)


**Nota**  
Le funzionalità di osservabilità descritte in questa sezione sono disponibili solo nell'interfaccia utente. OpenSearch Non sono disponibili nei OpenSearch dashboard. Per i nuovi carichi di lavoro di osservabilità, consigliamo di configurare uno spazio di lavoro [Utilizzo OpenSearch dell'interfaccia utente in Amazon OpenSearch Service](application.md) con osservabilità.

# Nozioni di base
<a name="observability-get-started"></a>

Attiva il tuo stack di osservabilità e inizia a inviare dati di telemetria in pochi minuti AWS .

## Avvio rapido
<a name="observability-get-started-quick"></a>

Il modo più veloce per implementare uno stack di end-to-end osservabilità è il programma di installazione AWS CLI. Crea le seguenti risorse:
+ Un dominio Amazon OpenSearch Service
+ Un Amazon Managed Service per l'area di lavoro Prometheus
+ Una pipeline di Amazon OpenSearch Ingestion
+ Un'applicazione OpenSearch UI con un'area di lavoro di osservabilità

Facoltativamente, il programma di installazione avvia un'istanza EC2 con la Demo per la telemetria di esempio. OpenTelemetry 

Esegui il seguente comando per avviare l'installazione:

```
bash -c "$(curl -fsSL https://raw.githubusercontent.com/opensearch-project/observability-stack/main/install.sh)" -- --deployment-target=aws
```

L'installazione richiede circa 15 minuti.

## Implementazione CDK
<a name="observability-get-started-cdk"></a>

Per infrastructure-as-code, usa AWS CDK. La distribuzione CDK crea due stack:


| Pila | Cosa crea | Orario di distribuzione | 
| --- | --- | --- | 
| ObsInfra | OpenSearch dominio, spazio di lavoro Amazon Managed Service for Prometheus, origine dati di query diretta, ruolo IAM della pipeline | \$117 min | 
| ObservabilityStack | Mappatura dettagliata del controllo degli accessi, pipeline di inserimento, applicazione OpenSearch UI, OpenSearch inizializzazione del dashboard, carico di lavoro dimostrativo (opzionale) | \$16 min | 

Esegui i seguenti comandi per la distribuzione:

```
cd aws/cdk
npm install
cdk deploy --all
```

Per ulteriori informazioni, consultate il [file README sulla distribuzione CDK su](https://github.com/opensearch-project/observability-stack/tree/main/aws/cdk). GitHub

## Invio di telemetria
<a name="observability-get-started-send"></a>

Entrambi i metodi di implementazione creano un endpoint di OpenSearch ingestione che accetta dati OTLP. Configura il tuo OTel Collector per l'esportazione utilizzando l'autenticazione SigV4:

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

exporters:
  otlphttp/logs:
    logs_endpoint: ${OSIS_ENDPOINT}/v1/logs
    auth: { authenticator: sigv4auth }
    compression: none
  otlphttp/traces:
    traces_endpoint: ${OSIS_ENDPOINT}/v1/traces
    auth: { authenticator: sigv4auth }
    compression: none
  otlphttp/metrics:
    metrics_endpoint: ${OSIS_ENDPOINT}/v1/metrics
    auth: { authenticator: sigv4auth }
    compression: none
```

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

## Ulteriori informazioni
<a name="observability-get-started-learn-more"></a>

Utilizza le seguenti risorse per saperne di più sull'invio di dati di telemetria:
+ [OpenTelemetry guide alla strumentazione (per lingua)](https://observability.opensearch.org/docs/send-data/applications/)
+ [Monitoraggio dell'infrastruttura (Docker AWS, Kubernetes, Prometheus)](https://observability.opensearch.org/docs/send-data/infrastructure/)
+ [OTel Configurazione del collettore](https://observability.opensearch.org/docs/send-data/opentelemetry/collector/)
+ [Pipeline e dosaggio dei dati](https://observability.opensearch.org/docs/send-data/data-pipeline/)
+ [Panoramica di Amazon OpenSearch Ingestion](ingestion.md) in questa guida

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

# Set di dati
<a name="observability-datasets"></a>

I set di dati sono raccolte di indici che rappresentano un raggruppamento logico dei dati di osservabilità. I set di dati vengono utilizzati per organizzare i log e le tracce dei dati in modo da poter interrogare e analizzare insieme gli indici correlati nell'esperienza Discover. Ogni set di dati è mappato su uno o più indici nel dominio del OpenSearch servizio e definisce il tipo di dati, il campo temporale e il linguaggio di query per la pagina Discover.

## Tipi di set di dati
<a name="observability-datasets-types"></a>

La tabella seguente descrive i tipi di set di dati che è possibile creare.


| Tipo | Description | Linguaggio di query | 
| --- | --- | --- | 
| Log | Raggruppa uno o più indici di log per l'interrogazione e la visualizzazione nella pagina Discover Logs. | PPL | 
| Tracce | Raggruppa gli indici trace span per l'interrogazione e la visualizzazione nella pagina Discover Traces. | PPL | 

**Nota**  
Le metriche non richiedono un set di dati perché i dati metrici non sono archiviati in. OpenSearch Le metriche vengono richieste direttamente da Amazon Managed Service for Prometheus utilizzando PromQL.

## Per creare un set di dati di log
<a name="observability-datasets-create-logs"></a>

Completa i seguenti passaggi per creare un set di dati di log nell'interfaccia utente. OpenSearch 

1. **Nel tuo spazio di lavoro di osservabilità, espandi **Discover** nella barra di navigazione a sinistra e scegli Logs.**

1. Scegli **Crea set di dati**.

1. Seleziona una fonte di dati dall'elenco delle connessioni di servizio disponibili OpenSearch .  
![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/datasets/datasets-select-data-source.png)

1. Configura il set di dati inserendo un nome, selezionando l'indice e specificando il campo timestamp.  
![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/datasets/datasets-configure-logs.png)

1. Scegli **Crea set di dati per salvare la configurazione**.

## Per creare un set di dati Traces
<a name="observability-datasets-create-traces"></a>

Completa i seguenti passaggi per creare un set di dati di tracce nell' OpenSearch interfaccia utente.

1. **Nel tuo spazio di lavoro sull'osservabilità, espandi **Discover** nella barra di navigazione a sinistra e scegli Traces.**

1. Scegli **Crea set di dati**.

1. Seleziona una fonte di dati dall'elenco delle connessioni di OpenSearch servizio disponibili.

1. Configura il set di dati inserendo un nome, selezionando l'indice span e specificando il campo timestamp.  
![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/datasets/datasets-configure-traces.png)

1. Scegli **Crea set** di dati per salvare la configurazione.

## Per visualizzare i set di dati
<a name="observability-datasets-view"></a>

Puoi visualizzare tutti i set di dati configurati dal selettore di set di dati nella pagina Discover Logs o Discover Traces. L'elenco dei set di dati mostra il nome, il tipo, l'origine dati e il campo timestamp di ogni set di dati.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/datasets/datasets-list.png)


## Analisi dei set di dati in Discover
<a name="observability-datasets-analyze"></a>

Dopo aver creato un set di dati, puoi analizzarlo nella pagina Discover corrispondente.

### Log
<a name="observability-datasets-analyze-logs"></a>

Seleziona un set di dati di log dal selettore di set di dati nella pagina Discover Logs per interrogare e visualizzare i dati di registro utilizzando PPL. Per ulteriori informazioni, consulta [Scopri i log](observability-analyze-logs.md).

### Tracce
<a name="observability-datasets-analyze-traces"></a>

Seleziona un set di dati di tracce dal selettore del set di dati nella pagina Discover Traces per esplorare gli intervalli di traccia, visualizzare le metriche RED e approfondire le singole tracce. Per ulteriori informazioni, consulta [Scopri Traces](observability-analyze-traces.md).

# Scopri i log
<a name="observability-analyze-logs"></a>

La pagina Discover Logs fornisce un'interfaccia dedicata per esplorare e analizzare i dati di registro nell'area di lavoro di osservabilità del OpenSearch servizio. Puoi scrivere query PPL per filtrare e aggregare i dati di registro, creare visualizzazioni direttamente dai risultati delle query e aggiungere tali visualizzazioni ai dashboard. La pagina fornisce anche assistenza per le interrogazioni in linguaggio naturale fornita dall'assistente AI. OpenSearch 

## Per accedere alla pagina dei registri
<a name="observability-logs-access"></a>

**Nel tuo spazio di lavoro di osservabilità, espandi **Discover** nella barra di navigazione a sinistra e scegli Logs.**

## Esplorazione dei dati di registro
<a name="observability-logs-explore"></a>

L'interfaccia Discover Logs fornisce i seguenti componenti per l'esplorazione dei dati di registro.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/discover-logs/discover-logs-interface.png)

+ **Selettore del set** di dati: scegli il set di dati dei log su cui desideri interrogare. Ogni set di dati è mappato su uno o più indici nel dominio del servizio. OpenSearch 
+ **Editor di query**: scrivi query PPL per filtrare, aggregare e trasformare i dati di registro. L'editor fornisce suggerimenti per il completamento automatico e l'evidenziazione della sintassi.
+ **Filtro temporale**: specifica l'intervallo di tempo per i risultati della query. È possibile scegliere un intervallo relativo o specificare orari di inizio e fine assoluti.
+ **Pannello dei risultati**: visualizza i risultati della query come tabella di eventi di registro. È possibile espandere i singoli eventi per visualizzare tutti i campi.
+ **Istogramma**: visualizza la distribuzione degli eventi di registro nel tempo. L'istogramma si aggiorna automaticamente in base alla query e al filtro temporale.
+ **Pannello Campi**: sfoglia i campi disponibili nel set di dati e aggiungili come colonne alla tabella dei risultati.

## Interrogazione dei log tramite PPL
<a name="observability-logs-query-ppl"></a>

Il linguaggio PPL (Piped Processing Language) è un linguaggio di interrogazione che utilizza la sintassi pipe-based () per concatenare i comandi. `|` È possibile utilizzare PPL per filtrare, aggregare e trasformare i dati di registro.

### Interrogazioni di base
<a name="observability-logs-basic-queries"></a>

Per recuperare tutti gli eventi di registro da un set di dati, usa il comando: `source`

```
source = my-logs-dataset
```

Per limitare il numero di risultati, usa il `head` comando:

```
source = my-logs-dataset | head 20
```

### Filtraggio con WHERE
<a name="observability-logs-where-clause"></a>

Utilizza la `where` clausola per filtrare gli eventi di registro in base ai valori dei campi:

```
source = my-logs-dataset | where severity_text = 'ERROR'
```

È possibile combinare più condizioni:

```
source = my-logs-dataset |
    where severity_text = 'ERROR' and service_name = 'payment-service'
```

### Gestione delle interrogazioni
<a name="observability-logs-manage-queries"></a>

È possibile salvare le interrogazioni utilizzate di frequente per riutilizzarle. Per salvare un'interrogazione, scegli **Salva** nella barra degli strumenti dell'editor di query e inserisci un nome per l'interrogazione. Per caricare un'interrogazione salvata, scegliete **Apri** e selezionate l'interrogazione dall'elenco.

Per l'elenco completo dei comandi e delle funzioni PPL, vedete il riferimento al [Piped Processing Language](https://observability.opensearch.org/docs/ppl/).

## Creazione di visualizzazioni dai log
<a name="observability-logs-visualizations"></a>

È possibile creare visualizzazioni direttamente dai risultati delle query PPL. Usa il `stats` comando per aggregare i dati per la visualizzazione:

```
source = my-logs-dataset |
    stats count() as error_count by service_name, span(timestamp, 1h)
```

Dopo aver eseguito una `stats` query, scegli la scheda **Visualizzazione** per visualizzare i risultati sotto forma di grafico.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/discover-logs/discover-logs-visualization.png)


### Tipi di visualizzazione
<a name="observability-logs-viz-types"></a>

La tabella seguente descrive i tipi di visualizzazione che è possibile utilizzare.


| Tipo | Description | 
| --- | --- | 
| Line (Linea) | Visualizza punti dati collegati da linee, utili per mostrare le tendenze nel tempo. | 
| Area | Simile a un grafico a linee con l'area sotto la linea riempita, utile per mostrare il volume nel tempo. | 
| Barra | Visualizza i dati come barre verticali o orizzontali, utili per confrontare i valori tra le categorie. | 
| Metrica | Visualizza un singolo valore numerico, utile per mostrare gli indicatori chiave delle prestazioni. | 
| Cronologia dello stato | Visualizza i cambiamenti di stato nel tempo sotto forma di bande colorate, utili per monitorare le transizioni di stato. | 
| Mappa termica | Visualizza i dati come una matrice di celle colorate, utile per mostrare densità e motivi. | 
| Manometro a barra | Visualizza un singolo valore come barra piena all'interno di un intervallo, utile per mostrare l'avanzamento verso una soglia. | 
| Torta | Visualizza i dati come sezioni proporzionali di un cerchio, utili per mostrare la composizione. | 

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/discover-logs/discover-logs-viz-types.png)


### Impostazioni di visualizzazione
<a name="observability-logs-viz-settings"></a>

Quando la scheda **Visualizzazione** è attiva, viene visualizzato un pannello delle impostazioni sul lato destro dello schermo. Usa questo pannello per configurare il tipo di grafico, mappare i campi sugli assi e personalizzare gli stili visivi come colori e legende.

Per cambiare gli assi di una visualizzazione, usa la configurazione degli assi nel pannello delle impostazioni.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/discover-logs/discover-logs-switch-axes.png)


## Aggiungere visualizzazioni alle dashboard
<a name="observability-logs-add-to-dashboard"></a>

Dopo aver creato una visualizzazione, puoi aggiungerla a una dashboard per un monitoraggio continuo. Scegli **Salva nella dashboard** nella barra degli strumenti di visualizzazione, quindi seleziona una dashboard esistente o creane una nuova. La visualizzazione viene salvata con la relativa query PPL sottostante in modo che si aggiorni automaticamente all'apertura del pannello di controllo.

# Scopri Traces
<a name="observability-analyze-traces"></a>

La pagina Discover Traces fornisce un'interfaccia dedicata per esplorare i dati di traccia distribuiti nell'area di lavoro di osservabilità OpenSearch del Servizio. Puoi visualizzare le metriche RED (frequenza, tasso di errore, durata) per i tuoi servizi, sfogliare gli intervalli di tracciamento con filtri sfaccettati e approfondire i singoli intervalli e le tracce per diagnosticare problemi di prestazioni. La pagina supporta anche la correlazione delle tracce con i dati di registro correlati.

## Per accedere alla pagina Traces
<a name="observability-traces-access"></a>

**Nel tuo spazio di lavoro sull'osservabilità, espandi **Discover** nella barra di navigazione a sinistra e scegli Traces.**

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/discover-traces/discover-traces.png)


## Configurazione dei set di dati di traccia
<a name="observability-traces-configure-datasets"></a>

Prima di poter esplorare i dati di traccia, è necessario configurare un set di dati di trace. È possibile creare un set di dati automaticamente o manualmente.

### Creazione automatica di set di dati
<a name="observability-traces-auto-create"></a>

Quando accedi alla pagina Discover Traces per la prima volta e nel tuo dominio sono presenti dati di traccia, la pagina ti chiede di creare automaticamente un set di dati. Scegli **Crea set** di dati per accettare la configurazione predefinita.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/discover-traces/trace-auto-create.png)


### Creazione manuale del set di dati
<a name="observability-traces-manual-create"></a>

Per creare manualmente un set di dati Traces, segui la procedura riportata di seguito. [Per creare un set di dati Traces](observability-datasets.md#observability-datasets-create-traces) La creazione manuale consente di controllare il modello dell'indice, il campo del timestamp e il nome del set di dati.

## Esplorazione dei dati di traccia
<a name="observability-traces-explore"></a>

La pagina Discover Traces fornisce i seguenti componenti per esplorare i dati di traccia.
+ **Metriche RED**: frequenza di visualizzazione (richieste al secondo), tasso di errore (percentuale di richieste non riuscite) e durata (percentili di latenza) per il set di dati selezionato. Queste metriche si aggiornano in base al filtro temporale.
+ **Campi sfaccettati**: filtra gli intervalli di traccia per nome del servizio, operazione, codice di stato e altri attributi span. Seleziona i valori nel pannello dei campi sfaccettati per restringere i risultati.
+ **Tabella Span**: sfoglia i singoli intervalli con le colonne per Trace ID, span ID, nome del servizio, operazione, durata e stato. Puoi ordinare in base a qualsiasi colonna ed espandere le righe per visualizzare i dettagli degli intervalli.

## Visualizzazione di un intervallo specifico
<a name="observability-traces-view-span"></a>

Per visualizzare i dettagli di un intervallo specifico, scegliete la riga di estensione nella tabella degli intervalli. Si apre un pannello a comparsa con gli attributi span, gli attributi delle risorse e le informazioni sugli eventi.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/discover-traces/trace-details-flyout.png)


## Pagina dei dettagli di Trace
<a name="observability-traces-detail-page"></a>

Per visualizzare la traccia completa, scegliete il link Trace ID nella tabella di span o nel pannello a comparsa. La pagina dei dettagli della traccia mostra un grafico a cascata che mostra tutti gli intervalli della traccia, le relative relazioni temporali e la durata complessiva della traccia. È possibile espandere i singoli intervalli per visualizzarne gli attributi e identificare i punti deboli.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/discover-traces/trace-detail-page.png)


## Correlazione delle tracce con i log
<a name="observability-traces-correlate-logs"></a>

Quando configuri una correlazione tra un set di dati di trace e un set di dati di log, puoi visualizzare le voci di registro correlate direttamente dalla pagina Discover Traces. Per informazioni sulla creazione di correlazioni, vedere. [Correlazioni](observability-correlations.md)

### Visualizzazione dei log correlati
<a name="observability-traces-related-logs"></a>

Nel riquadro a comparsa dei dettagli dell'intervallo o nella pagina dei dettagli di traccia, scegliete la scheda **Log correlati** per visualizzare le voci di registro che corrispondono all'ID di traccia, al nome del servizio e all'intervallo di tempo dello span. Questa correlazione ti aiuta a capire cosa è successo nella tua applicazione durante l'esecuzione dello span.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/discover-traces/related-logs.png)


### Reindirizzamento dei log con contesto
<a name="observability-traces-log-redirection"></a>

È possibile passare da un trace span direttamente alla pagina Discover Logs mantenendo il contesto pertinente. Scegli **Visualizza nei log dal pannello dei log** correlati per aprire la pagina Discover Logs con la query precompilata per filtrare in base all'ID di traccia e all'intervallo di tempo dell'intervallo di tempo dell'intervallo.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/discover-traces/logs-redirection.png)


## Interrogazione delle tracce tramite PPL
<a name="observability-traces-querying"></a>

È possibile utilizzare PPL per interrogare direttamente i dati di traccia. PPL concatena i comandi che utilizzano il carattere pipe per filtrare, trasformare e aggregare i dati span.

L'esempio seguente trova le 10 tracce più lente:

```
source = otel-v1-apm-span-*
| where durationInNanos > 5000000000
| fields traceId, serviceName, name, durationInNanos
| sort - durationInNanos
| head 10
```

L'esempio seguente conta gli errori per servizio:

```
source = otel-v1-apm-span-*
| where status.code = 2
| stats count() as errorCount by serviceName
| sort - errorCount
```

L'esempio seguente trova le tracce per un servizio specifico:

```
source = otel-v1-apm-span-*
| where serviceName = 'checkout-service'
| where parentSpanId = ''
| sort - startTime
| head 20
```

# Metriche
<a name="observability-metrics"></a>

La pagina Discover Metrics nell'interfaccia OpenSearch utente fornisce un'interfaccia dedicata per l'individuazione, l'interrogazione e la visualizzazione dei dati metrici di serie temporali. Questa pagina è ottimizzata per lavorare con le metriche di Prometheus utilizzando PromQL.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/dashboards/prometheus.png)


La pagina Discover Metrics è disponibile negli spazi di lavoro di Observability. **Per accedervi, accedi a un'area di lavoro di Observability, espandi **Discover** nella barra di navigazione a sinistra e seleziona Metrics.**

## Configurazione di un'origine dati Prometheus
<a name="observability-metrics-data-source"></a>

Prima di iniziare, configura un'origine dati Prometheus utilizzando uno dei seguenti metodi:
+ [Creazione di un'origine dati Amazon Managed Service per Prometheus](direct-query-prometheus-creating.md)nella console di gestione AWS 
+ [AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/opensearch/add-direct-query-data-source.html)

## pannello Query
<a name="observability-metrics-query"></a>

Puoi scrivere ed eseguire query metriche nel pannello delle query nella parte superiore della pagina Discover Metrics. L'editor di query fornisce suggerimenti per il completamento automatico e l'evidenziazione della sintassi per PromQL.

**Scrittura di interrogazioni**  
Scrivi query utilizzando la sintassi PromQL. Esempio:

```
up{job="prometheus"}
```

**Esecuzione di query**  
**Per eseguire una query, inserisci la tua query nell'editor di query e seleziona Aggiorna.**

Puoi eseguire più query PromQL insieme separandole con un punto e virgola (): `;`

```
up{job="prometheus"};
node_cpu_seconds_total{mode="idle"};
```

Ogni query viene eseguita in modo indipendente e i risultati vengono combinati nell'output.

## Filtro temporale
<a name="observability-metrics-time-filter"></a>

Usa il filtro temporale per specificare l'intervallo di tempo per i tuoi dati metrici:
+ **Selezione rapida**: scegli un intervallo di tempo relativo (ad esempio, gli ultimi 15 minuti o l'ultima 1 ora).
+ **Usato comunemente**: seleziona tra intervalli di tempo predefiniti.
+ **Personalizzato**: specifica l'ora di inizio e di fine assoluta.
+ **Aggiornamento automatico: imposta un intervallo di aggiornamento** automatico.

## Visualizzazione dei risultati
<a name="observability-metrics-results"></a>

Dopo aver eseguito una query, i risultati vengono visualizzati in un'interfaccia a schede:
+ **Metriche**: visualizza il punto dati più recente per ogni serie in un formato tabellare.
+ **Raw**: mostra il punto dati più recente per ogni serie come JSON non elaborato restituito dall'origine dati.
+ **Visualizzazione**: fornisce grafici interattivi per i dati metrici.

## Configurazione delle visualizzazioni
<a name="observability-metrics-visualizations"></a>

Quando è selezionata la scheda **Visualizzazione**, viene visualizzato un pannello delle impostazioni sul lato destro dello schermo. Utilizzate questo pannello per:
+ **Seleziona un tipo di grafico**: scegli tra visualizzazioni a linee, a barre, a torta, a indicatore o tabellari.
+ **Assi della mappa**: assegna campi agli assi X e Y.
+ **Personalizza gli stili**: regola colori, legende, griglie e altre opzioni visive.

Quando modifichi le impostazioni, la visualizzazione viene aggiornata automaticamente.

# Correlazioni
<a name="observability-correlations"></a>

Le correlazioni collegano un set di dati di tracce a un set di dati di log in modo da poter visualizzare le voci di registro correlate quando si esaminano gli intervalli di traccia. Definendo una correlazione, abiliti la pagina Discover Traces a visualizzare i log che si sono verificati durante l'esecuzione di un intervallo, aiutandoti a diagnosticare i problemi più velocemente senza passare da una pagina all'altra.

## Requisiti di correlazione
<a name="observability-correlations-requirements"></a>

Per creare una correlazione, i dati di log e trace devono contenere campi corrispondenti. La tabella seguente descrive i campi utilizzati dalla correlazione per unire i dati di traccia e di registro.


| Campo | Description | Richiesto | 
| --- | --- | --- | 
| ID di traccia | L'identificatore univoco per la traccia. Deve esistere sia nell'indice trace span che nell'indice di registro. | Sì | 
| ID Span | L'identificatore univoco dello span. Utilizzato per abbinare i log a un intervallo specifico all'interno di una traccia. | No | 
| Nome del servizio | Il nome del servizio che ha generato la telemetria. Utilizzato per filtrare i log correlati in base al servizio. | No | 
| Time stamp | Il campo orario utilizzato per includere i log correlati all'intervallo di tempo dell'intervallo di tempo dell'intervallo. | Sì | 

## Per creare una correlazione trace-to-logs
<a name="observability-correlations-create"></a>

Completa i passaggi seguenti per creare una correlazione tra un set di dati di trace e un set di dati di log.

1. **Nel tuo spazio di lavoro sull'osservabilità, espandi **Discover nella barra di navigazione a sinistra** e scegli Traces.**

1. Seleziona il set di dati delle tracce che desideri correlare.

1. Scegli la scheda **Correlazioni** nel pannello di configurazione del set di dati.  
![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/datasets/correlations-trace-dataset-tab.png)

1. Scegli **Crea correlazione**.

1. Nella finestra di dialogo di configurazione, seleziona il set di dati dei log di destinazione e mappa i campi di correlazione richiesti (ID di traccia e timestamp). Facoltativamente, mappa l'ID span e il nome del servizio per una corrispondenza più precisa.  
![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/datasets/correlations-configure-dialog.png)

1. Scegli **Crea per** salvare la correlazione.

1. Verifica che la correlazione compaia nella tabella delle correlazioni.  
![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/datasets/correlations-created-table.png)

## Visualizzazione delle correlazioni nei log, nei set di dati
<a name="observability-correlations-view-logs"></a>

Dopo aver creato una correlazione, puoi anche visualizzarla dal lato del set di dati dei log. Vai alla pagina Discover Logs, seleziona il set di dati dei log correlati e scegli la scheda **Correlazioni** per visualizzare il set di dati delle tracce collegato.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/datasets/correlations-logs-dataset-tab.png)


## Utilizzo delle correlazioni nella pagina Traces
<a name="observability-correlations-use-traces"></a>

Quando esiste una correlazione, la pagina Discover Traces mostra i log correlati nella visualizzazione dei dettagli di span. Scegliete un intervallo nella tabella degli span per aprire il riquadro a discesa dei dettagli, quindi scegliete la scheda Log correlati per visualizzare le **voci di registro correlate.**

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/datasets/correlations-span-details-logs.png)


## Gestione delle correlazioni
<a name="observability-correlations-manage"></a>

È possibile modificare o rimuovere le correlazioni dalla scheda **Correlazioni** del set di dati Traces o Logs.
+ **Modifica**: scegli la correlazione nella tabella e scegli **Modifica** per aggiornare le mappature dei campi o il set di dati di destinazione.
+ **Rimozione**: scegli la correlazione nella tabella e scegli **Elimina** per rimuovere la correlazione. La rimozione di una correlazione non comporta l'eliminazione di alcun dato.

# Pannelli di controllo
<a name="observability-dashboards"></a>

Le dashboard combinano le visualizzazioni di log, tracce e metriche in un'unica visualizzazione. È possibile utilizzare i dashboard per monitorare lo stato operativo, rispondere agli incidenti e tenere traccia dell'utilizzo delle risorse nel sistema distribuito.

La tabella seguente descrive i casi d'uso più comuni per i dashboard.


| Caso d’uso | Esempio | 
| --- | --- | 
| Monitoraggio operativo | Monitora lo stato del servizio, la velocità effettiva e i tassi di errore in tempo reale. | 
| Risposta agli incidenti | Correla log, tracce e metriche durante un incidente attivo. | 
| Pianificazione della capacità | Monitora le tendenze di utilizzo delle risorse per pianificare la scalabilità. | 
| Monitoraggio della disponibilità | Misura l'operatività e la disponibilità rispetto agli obiettivi a livello di servizio. | 
| Revisione post-incidente | Analizza i dati storici per comprendere la causa principale degli incidenti passati. | 

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/otel-dashboard.png)


## Struttura del pannello di controllo
<a name="observability-dashboards-structure"></a>

Una dashboard è una raccolta di pannelli disposti su una griglia. Ogni pannello è composto dai seguenti componenti.
+ **Origine dati**: l' OpenSearch indice o l'origine dati di Amazon Managed Service for Prometheus interrogata dal pannello.
+ **Query: una query** PPL o PromQL che recupera i dati per il pannello.
+ **Tipo di visualizzazione**: il tipo di grafico utilizzato per visualizzare i risultati della query, ad esempio linee, barre o valori metrici.
+ **Configurazione opzionale**: assi, legende, soglie e opzioni di formattazione.

Il selettore dell'intervallo di tempo nella parte superiore della dashboard si applica a tutti i pannelli. Puoi sovrascrivere l'intervallo di tempo per i singoli pannelli quando necessario.

## Creazione di dashboard da Discover
<a name="observability-dashboards-discover"></a>

Il flusso di lavoro consigliato per la creazione di dashboard inizia in Discover. Questo flusso di lavoro è coerente tra log, tracce e metriche.

1. **Interroga i tuoi dati in Discover**: accedi a Discover Logs, Discover Traces o Discover Metrics e scrivi una query utilizzando PPL (per log e tracce) o PromQL (per metriche).

1. **Crea una visualizzazione**: quando la query restituisce risultati, utilizza la scheda Visualizzazione per scegliere un tipo di grafico e configurare la visualizzazione. Per le query di log and trace, i comandi di aggregazione, ad esempio, passano `stats` automaticamente alla visualizzazione di visualizzazione.

1. **Salva in una dashboard**: scegli **Aggiungi alla dashboard per** salvare la visualizzazione in una dashboard nuova o esistente. Il pannello rimane attivo e si aggiorna man mano che arrivano nuovi dati.

1. **Iterazione**: ripeti l'operazione per ogni domanda a cui desideri che la dashboard risponda. Quando qualcosa sembra sbagliato su una dashboard, scegli un pannello qualsiasi per aprire la query sottostante in Discover per ulteriori indagini.

**Importante**  
Le visualizzazioni create tramite la pagina **Visualizzazioni** nell' OpenSearch interfaccia utente utilizzano DQL (Dashboards Query Language) e DSL (Domain Specific Language), che al momento non supportano il Piped Processing Language (PPL). Per creare visualizzazioni basate su PPL, utilizza il flusso di lavoro Discover descritto sopra.

## Filtri del dashboard
<a name="observability-dashboards-filters"></a>

I filtri consentono di restringere i dati visualizzati su tutti i pannelli di una dashboard senza modificare le singole query.

**Per aggiungere un filtro**

1. Apri la dashboard che desideri filtrare.

1. Scegli **Aggiungi filtro** nella barra dei filtri.

1. Seleziona il nome di un campo dall'elenco a discesa.

1. Seleziona un operatore e inserisci un valore.

1. Scegli **Save** (Salva).

La tabella seguente descrive i casi d'uso più comuni dei filtri.


| Scenario | Campo | Operatore | Valore | 
| --- | --- | --- | --- | 
| Visualizza un singolo ambiente | environment | is | production | 
| Errori isolati | status\$1code | is greater than or equal to | 400 | 
| Concentrati su un servizio specifico | service.name | is | order-service | 
| Escludi i controlli sanitari | http.url | is not | /health | 

Filtri **bloccati rispetto a filtri non bloccati**: un filtro bloccato persiste quando navighi tra le dashboard. Un filtro non aggiunto si applica solo alla dashboard corrente. Per aggiungere un filtro, scegli l'icona a forma di puntina accanto al badge del filtro.

## Creazione di dashboard
<a name="observability-dashboards-build"></a>

### Tipi di visualizzazione
<a name="observability-dashboards-build-viz-types"></a>

La tabella seguente descrive i tipi di visualizzazione disponibili per i pannelli del dashboard.


| Tipo | Caso d’uso | 
| --- | --- | 
| Line (Linea) | Tendenze nel tempo, come la frequenza delle richieste o la latenza | 
| Area | Volume nel tempo con interruzioni cumulative | 
| Barra | Confronto dei valori tra le categorie | 
| Barra orizzontale | Confronti classificati, ad esempio i migliori servizi in base al numero di errori | 
| Tabella dei dati | Dati tabulari con ordinamento e impaginazione | 
| Valore del parametro | Indicatori chiave di prestazione singoli, come le richieste totali | 
| Gauge | Progresso verso una soglia, ad esempio l'utilizzo della CPU | 
| Torta | Composizione e proporzioni, come il traffico per regione | 
| Mappa di calore | Schemi di densità e distribuzione su due dimensioni | 
| Nuvola di tag | Frequenza relativa dei termini, come i messaggi di errore più comuni | 

### Configurazione dei pannelli
<a name="observability-dashboards-build-configure"></a>

Ogni pannello dispone di un editor di query in cui scrivere query PPL o PromQL. Gli esempi seguenti mostrano le query di pannello più comuni.

Conteggio degli errori per servizio (PPL):

```
source = logs-dataset |
    where severity_text = 'ERROR' |
    stats count() as error_count by service_name, span(timestamp, 5m)
```

Tasso di utilizzo della CPU (ProMQL):

```
rate(container_cpu_usage_seconds_total{namespace="production"}[5m])
```

È inoltre possibile configurare le seguenti opzioni del pannello.
+ **Assi**: imposta le etichette degli assi, le scale (lineari o logaritmiche) e gli intervalli di valori.
+ **Legende**: controlla la posizione della legenda e le serie da visualizzare.
+ **Soglie**: aggiungi linee di soglia orizzontali per evidenziare i livelli di avviso o critici.

### Suggerimenti per il layout
<a name="observability-dashboards-build-layout"></a>

Utilizza i seguenti suggerimenti per organizzare i pannelli della dashboard in modo efficace.
+ Posiziona pannelli di riepilogo di alto livello (valori metrici, indicatori) nella parte superiore della dashboard.
+ Raggruppa i pannelli correlati, ad esempio tutti i pannelli per un unico servizio.
+ Utilizzate larghezze coerenti per i pannelli della stessa riga.
+ Trascina i bordi del pannello per ridimensionarlo e trascina le intestazioni dei pannelli per riposizionarlo.

### Layout consigliati
<a name="observability-dashboards-build-recommended"></a>

Le tabelle seguenti descrivono i layout di pannello consigliati per i tipi di dashboard più comuni.

**Dashboard sullo stato del servizio**


| Pannello | Tipo di visualizzazione | 
| --- | --- | 
| Tasso di richiesta | Line (Linea) | 
| Tasso di errore | Line (Linea) | 
| Latenza P99 | Line (Linea) | 
| Avvisi attivi | Valore del parametro | 
| Principali errori per servizio | Barra orizzontale | 

**Dashboard di risposta agli incidenti**


| Pannello | Tipo di visualizzazione | 
| --- | --- | 
| Log di errore | Tabella dei dati | 
| Conteggio degli errori nel tempo | Area | 
| Servizi interessati | Torta | 
| Picchi di latenza | Line (Linea) | 

**Dashboard sull'utilizzo delle risorse**


| Pannello | Tipo di visualizzazione | 
| --- | --- | 
| Utilizzo CPU | Gauge | 
| Utilizzo della memoria nel tempo | Area | 
| I/O del disco | Line (Linea) | 
| Throughput di rete | Line (Linea) | 

### Controlli dell'intervallo di tempo
<a name="observability-dashboards-build-time-range"></a>

Il selettore dell'intervallo di tempo nella parte superiore della dashboard controlla la finestra temporale di tutti i pannelli. È possibile selezionare un intervallo preimpostato (ad esempio **Ultimi 15 minuti** o **Ultime 24 ore**) o specificare un intervallo assoluto personalizzato.

Per abilitare l'aggiornamento automatico, scegli il menu a discesa dell'intervallo di aggiornamento accanto al selettore dell'intervallo di tempo e seleziona un intervallo. L'aggiornamento automatico riesegue tutte le interrogazioni del pannello all'intervallo specificato in modo che la dashboard mostri i dati più recenti.

## Condivisione dei pannelli di controllo
<a name="observability-dashboards-sharing"></a>

Puoi condividere le dashboard con altri utenti dell'organizzazione tramite URLs istantanee ed esportazioni.

### Condividi tramite URL
<a name="observability-dashboards-sharing-url"></a>

Copia l'URL della dashboard dalla barra degli indirizzi del browser e condividilo direttamente. L'URL conserva l'intervallo di tempo e i filtri correnti. Puoi includere collegamenti alla dashboard nei segnalibri, nei runbook o nella documentazione sulla risposta agli incidenti.

### Snapshot
<a name="observability-dashboards-sharing-snapshots"></a>

Un'istantanea cattura lo stato corrente di un pannello di controllo, inclusi tutti i dati del pannello, in un momento specifico. Le istantanee sono di sola lettura e non si aggiornano quando i dati sottostanti cambiano. Utilizza le istantanee per conservare una registrazione dello stato della dashboard durante gli incidenti o le revisioni.

### Importa ed esporta definizioni
<a name="observability-dashboards-sharing-import-export"></a>

Puoi esportare una definizione di dashboard come JSON e importarla in un altro spazio di lavoro o ambiente. Questo approccio è utile per promuovere le dashboard dallo sviluppo alla produzione o per condividere layout standard tra i team.

### Le migliori pratiche per la condivisione
<a name="observability-dashboards-sharing-best-practices"></a>
+ **Destinatari**: progetta dashboard per un pubblico specifico, ad esempio tecnici o dirigenti disponibili su richiesta.
+ **Focalizzazione**: limita ogni dashboard a un unico scopo o flusso di lavoro.
+ **Convenzioni: utilizza convenzioni** di denominazione coerenti per dashboard e pannelli in tutta l'organizzazione.
+ **Controllo della versione**: esporta le definizioni JSON della dashboard e le archivia nel controllo delle versioni per tenere traccia delle modifiche nel tempo.

## Dashboard di risoluzione dei problemi
<a name="observability-dashboards-troubleshooting"></a>

Questa sezione descrive i problemi più comuni delle dashboard e come risolverli.

### Nessun dato in un pannello
<a name="observability-dashboards-troubleshooting-no-data"></a>

Se un pannello non visualizza dati, verificate le seguenti cause comuni.


| Causa | Verifica | Correggere | 
| --- | --- | --- | 
| Intervallo di tempo troppo ristretto | Verifica che l'intervallo di tempo del dashboard copra il periodo in cui i dati sono stati inseriti. | Espandi l'intervallo di tempo o seleziona Ultime 24 ore. | 
| Filtro attivo, esclusi i dati | Controlla la barra dei filtri per individuare i filtri che potrebbero escludere tutti i documenti corrispondenti. | Rimuovi o modifica il filtro, quindi verifica che vengano visualizzati i dati. | 
| Schema di indice errato | Verificate che l'origine dati del pannello punti a un indice che contiene dati. | Aggiorna la fonte di dati secondo lo schema di indice corretto nell'editor del pannello. | 
| Errore di sintassi della query | Cerca i messaggi di errore nell'intestazione del pannello o nell'editor di query. | Correggi la sintassi PPL o PromQL ed esegui nuovamente la query. | 

### Dati errati in un pannello
<a name="observability-dashboards-troubleshooting-wrong-data"></a>

Se un pannello mostra risultati imprevisti, provate i seguenti passaggi.
+ Verifica che la query restituisca i campi previsti eseguendola prima in Discover.
+ Verifica che il tipo di visualizzazione corrisponda alla forma dei dati (ad esempio, utilizza un grafico a linee per i dati delle serie temporali).
+ Verifica che sia selezionata la fonte di dati corretta nell'editor del pannello.

### Dati obsoleti
<a name="observability-dashboards-troubleshooting-stale-data"></a>

Se i pannelli del dashboard visualizzano informazioni non aggiornate, prova i seguenti passaggi.
+ Scegli l'icona di aggiornamento nella barra degli strumenti per aggiornare manualmente tutti i pannelli.
+ Verifica che l'aggiornamento automatico sia abilitato e impostato su un intervallo appropriato.
+ Verifica che la pipeline di ingestione stia inviando attivamente i dati agli indici configurati.

### Problemi di prestazioni
<a name="observability-dashboards-troubleshooting-performance"></a>

I seguenti suggerimenti possono aiutarti a risolvere i problemi di prestazioni più comuni.
+ **Dashboard lento**: riduci il numero di pannelli o restringi l'intervallo di tempo. Le dashboard con molti pannelli eseguono più query contemporaneamente, il che può aumentare i tempi di caricamento.
+ **Pannello lento**: semplifica l'interrogazione del pannello. Evita di utilizzare schemi jolly nelle `where` clausole PPL e limita il numero di bucket di aggregazione.
+ **Browser lag**: riduce la densità dei dati nelle visualizzazioni. Ad esempio, aumenta l'intervallo di tempo nei `stats` comandi per produrre meno punti dati.

### Problemi di filtro
<a name="observability-dashboards-troubleshooting-filters"></a>

Se i filtri non si comportano come previsto, prova i seguenti passaggi.
+ Verifica che il nome del campo nel filtro corrisponda al nome del campo nella mappatura dell'indice.
+ Controlla se un filtro bloccato da un'altra dashboard influisce sui risultati.
+ Rimuovi tutti i filtri e aggiungili nuovamente uno alla volta per isolare il problema.

### Ispeziona un pannello
<a name="observability-dashboards-troubleshooting-inspect"></a>

L'ispettore del pannello consente di eseguire il debug dei dati e dei problemi relativi alle interrogazioni. **Per aprire l'inspector, scegliete il menu del pannello (tre puntini) e selezionate Ispeziona.** L'ispettore fornisce le seguenti schede.
+ **Dati**: visualizza i dati grezzi restituiti dalla query in formato tabulare.
+ **Richiesta**: mostra la query inviata all'origine dati, inclusa l'istruzione PPL o PromQL completa.
+ **Risposta**: mostra la risposta non elaborata dall'origine dati, comprese le informazioni sulla tempistica e sullo stato.

### Strumenti per sviluppatori di browser
<a name="observability-dashboards-troubleshooting-browser"></a>

Per una risoluzione avanzata dei problemi, utilizzate gli strumenti di sviluppo del browser per esaminare le richieste di rete. Apri la scheda **Rete**, filtra le chiamate API e cerca le richieste non riuscite o le risposte lente. Controlla il corpo della risposta per i messaggi di errore che possono aiutarti a identificare la causa principale.

# Monitoraggio dell'applicazione
<a name="observability-app-monitoring"></a>

Il monitoraggio delle applicazioni fornisce una visione in tempo reale delle prestazioni dei servizi. Combina i dati topologici archiviati OpenSearch con le metriche RED di serie temporali (Rate, Errors, Duration) di Amazon Managed Service for Prometheus per far emergere informazioni su salute, latenza, velocità effettiva ed errore nel sistema distribuito.

****Per accedere al monitoraggio delle applicazioni, nell'interfaccia utente accedi a Observability > Application Monitoring. OpenSearch **** La barra laterale mostra due visualizzazioni:
+ **Mappa dell'applicazione**: grafico topologico interattivo delle dipendenze dei servizi
+ **Servizi**: catalogo di tutti i servizi strumentati con filtri, visualizzazioni dettagliate e collegamenti di correlazione

## Prerequisiti
<a name="observability-app-monitoring-prereqs"></a>

Prima di poter utilizzare il monitoraggio delle applicazioni, è necessario aver configurato le seguenti risorse.
+ [Dati di traccia OTLP che fluiscono dai OTel Collector a OpenSearch Ingestion (le metriche e i log sono opzionali](observability-ingestion.md))
+ [Amazon Managed Service per Prometheus configurato per ricevere la scrittura remota da Ingestion OpenSearch ](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/configure-client-prometheus.html)
+ Uno spazio di lavoro dell'interfaccia utente con Observability abilitato OpenSearch 

## Come funziona
<a name="observability-app-monitoring-how-it-works"></a>

Il diagramma seguente mostra l' end-to-endarchitettura per il monitoraggio delle applicazioni.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/otel-sdk-service.png)


1. Le applicazioni e l'infrastruttura inviano telemetria al Collector tramite OpenTelemetry SDKs la strumentazione automatica o l'API. OTel OTel

1. The OTel Collector inoltra i dati di traccia a Ingestion tramite OTLP. OpenSearch 

1. Il processore OpenSearch Ingestion estrae le relazioni e calcola le metriche RED. `otel_apm_service_map` service-to-service

1. La topologia e i dati di traccia non elaborati vengono indicizzati in. OpenSearch Le metriche RED vengono esportate in Amazon Managed Service for Prometheus tramite scrittura remota.

1. OpenSearch L'interfaccia utente interroga entrambi gli archivi per visualizzare la mappa dell'applicazione, il catalogo dei servizi e le visualizzazioni dei dettagli del servizio.

## Servizi
<a name="observability-app-services"></a>

La visualizzazione Servizi fornisce un catalogo centralizzato di tutti i servizi strumentati, che mostra le metriche RED (Rate, Errors, Duration) a colpo d'occhio. È possibile utilizzare questa visualizzazione per identificare rapidamente i servizi non funzionanti e approfondire le visualizzazioni dettagliate per un'analisi più approfondita.

****Per accedere alla vista Servizi, vai all'area di lavoro Observability nell' OpenSearch interfaccia utente e scegli APM > Servizi.****

La home page dei Servizi mostra una tabella di tutti i servizi strumentati insieme a pannelli di riepilogo. L'immagine seguente mostra la home page dei Servizi.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/apm/services-home.png)


La tabella seguente descrive le colonne della tabella dei servizi.


| Colonna | Description | 
| --- | --- | 
| Nome del servizio | Il nome del servizio strumentato. | 
| Latenza P99 | La latenza del 99° percentile per il servizio. | 
| Latenza P90 | Latenza del 90° percentile per il servizio. | 
| Latenza P50 | La latenza del 50° percentile (mediana) del servizio. | 
| Total Requests (Richieste totali) | Il numero totale di richieste elaborate nell'intervallo di tempo selezionato. | 
| Rapporto di fallimento | Il rapporto tra richieste non riuscite e richieste totali. | 
| Ambiente | L'ambiente di distribuzione del servizio, ad esempio production ostaging. | 

La home page include anche i seguenti pannelli di riepilogo:
+ **I migliori servizi per percentuale di errore**: servizi con la più alta percentuale di risposte 5xx.
+ **Principali percorsi di dipendenza in base alla frequenza di errore**: percorsi di Service-to-service dipendenza con i tassi di errore più elevati.

È possibile filtrare la tabella dei servizi utilizzando i seguenti filtri:
+ **Ambiente**: filtra per ambiente di distribuzione.
+ **Latenza**: filtra per intervallo di latenza.
+ **Throughput**: filtra in base all'intervallo di throughput della richiesta.
+ **Rapporto di guasto**: filtra per intervallo del rapporto di guasto.

### Panoramica del servizio
<a name="observability-app-services-overview"></a>

Per aprire la visualizzazione dettagliata del servizio, selezionare un nome di servizio nella tabella dei servizi. La scheda Panoramica mostra riquadri metrici e grafici delle serie temporali per il servizio selezionato.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/apm/services-overview.png)


La scheda Panoramica include i seguenti grafici delle serie temporali:
+ **Latenza per dipendenze del servizio**: latenza P50, P90 e P99 suddivisa per dipendenze a valle.
+ **Richieste per operazioni**: volume delle richieste per ogni operazione del servizio.
+ **Disponibilità per operazioni**: percentuale di risposte riuscite per ciascuna operazione.
+ **Percentuale di guasti e tasso di errore per operazione**: percentuale di risposte 5xx e 4xx per ogni operazione.

### Operazioni
<a name="observability-app-services-operations"></a>

La scheda Operazioni fornisce una suddivisione per operazione per il servizio selezionato. È possibile ordinare la tabella in base a qualsiasi colonna per identificare le operazioni problematiche.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/apm/service-operations.png)


La tabella seguente descrive le colonne della tabella delle operazioni.


| Colonna | Description | 
| --- | --- | 
| Nome operazione | Il nome dell'operazione. | 
| Latenza P50/P90/P99 | La latenza del 50°, 90° e 99° percentile per l'operazione. | 
| Total Requests (Richieste totali) | Il numero totale di richieste per l'operazione nell'intervallo di tempo selezionato. | 
| Tasso di errore | La percentuale di richieste che hanno restituito errori. | 
| Disponibilità | La percentuale di risposte riuscite per l'operazione. | 

### Dipendenze
<a name="observability-app-services-dependencies"></a>

La scheda Dipendenze mostra i servizi a valle richiamati dal servizio selezionato.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/apm/service-dependencies.png)


La tabella seguente descrive le colonne della tabella delle dipendenze.


| Colonna | Description | 
| --- | --- | 
| Servizio di dipendenza | Il nome del servizio downstream. | 
| Funzionamento remoto | L'operazione richiamata dal servizio downstream. | 
| Operazioni di servizio | Le operazioni sul servizio corrente che richiamano questa dipendenza. | 
| Latenza P99/P90/P50 | La latenza del 99°, 90° e 50° percentile per il percorso di dipendenza. | 
| Total Requests (Richieste totali) | Il numero totale di richieste alla dipendenza durante l'intervallo di tempo selezionato. | 
| Tasso di errore | La percentuale di richieste alla dipendenza che hanno restituito errori. | 
| Disponibilità | La percentuale di risposte riuscite derivanti dalla dipendenza. | 

### Correlazioni
<a name="observability-app-services-correlations"></a>

La visualizzazione dettagliata del servizio fornisce correlazioni contestuali che consentono di passare dalle metriche del servizio direttamente alle tracce e ai log correlati. È possibile utilizzare le correlazioni per analizzare la causa principale dei picchi di latenza o degli aumenti del tasso di errore.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/apm/service-span-correlations.png)


Sono disponibili le seguenti opzioni di correlazione:
+ **Visualizza tracce correlate**: apre una visualizzazione di traccia filtrata per il servizio o l'operazione selezionati.
+ **Visualizza registri correlati**: apre una visualizzazione di registro filtrata per il servizio o l'operazione selezionati.
+ **Filtra per attributi: limita** i risultati di correlazione in base a specifici attributi span.

## Mappa dell'applicazione
<a name="observability-app-map"></a>

L'Application Map è una visualizzazione topologica interattiva che OpenSearch Ingestion genera automaticamente dai dati di traccia utilizzando il processore. `otel_apm_service_map` La mappa mostra i servizi come nodi con bordi direzionali che mostrano schemi di comunicazione, sovrapposti a metriche RED (Rate, Errors, Duration).

****Per accedere alla mappa dell'applicazione, vai all'area di lavoro Observability nell' OpenSearch interfaccia utente e scegli APM > Mappa dell'applicazione.****

L'immagine seguente mostra la mappa dell'applicazione.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/apm/application-map.png)


La mappa mostra le seguenti metriche RED per ogni servizio:
+ **Frequenza**: richieste al secondo elaborate dal servizio.
+ **Errori**: percentuale di risposte 4xx e 5xx.
+ **Durata**: latenza P50 e P99 per il servizio.

Il `otel_apm_service_map` processore genera queste metriche e le archivia in Amazon Managed Service for Prometheus tramite scrittura remota.

La visualizzazione della topologia rappresenta i servizi come nodi e la direzione della comunicazione come bordi. La codifica a colori indica lo stato di salute di ogni servizio. La mappa si aggiorna automaticamente non appena OpenSearch Ingestion acquisisce nuovi dati di traccia.

### Servizi di raggruppamento
<a name="observability-app-map-groupby"></a>

È possibile raggruppare i servizi in base ad attributi quali linguaggio di programmazione, team o ambiente. Quando si seleziona un attributo raggruppato per, la mappa passa da un grafico della topologia a una visualizzazione a griglia a schede. Ogni scheda rappresenta un gruppo di servizi che condividono lo stesso valore di attributo.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/apm/groupby-attributes.png)


Gli attributi raggruppati per disponibili sono determinati dall'`group_by_attributes`impostazione nella configurazione del `otel_apm_service_map` processore in Ingestion. OpenSearch 

### Visualizzazione dei dettagli dei nodi
<a name="observability-app-map-node-details"></a>

Per visualizzare i dettagli di un servizio, selezionare un nodo sulla mappa. Si apre un pannello di dettaglio con le seguenti sezioni.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/apm/application-map-node-details.png)


La sezione **Health** mostra le seguenti metriche di riepilogo:
+ Total Requests (Richieste totali)
+ Errori totali 4xx
+ Difetti totali 5xx

La sezione **Metriche** mostra i seguenti grafici delle serie temporali:
+ Richieste
+ Latenza P50/P90/P99
+ Guasti 5xx
+ Errori 4xx

Scegli **Visualizza dettagli** per accedere alla visualizzazione dei dettagli dei servizi per il servizio selezionato.

### Filtrare la mappa
<a name="observability-app-map-filters"></a>

È possibile filtrare la mappa dell'applicazione utilizzando i seguenti filtri:
+ **Frequenza di errore**: filtra i servizi in base alla frequenza di errore lato server (5xx).
+ **Frequenza di errore**: filtra i servizi in base alla frequenza di errore lato client (4xx).
+ **Ambiente**: filtra i servizi in base all'ambiente di distribuzione.

L'immagine seguente mostra la mappa filtrata per tasso di errore.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/apm/filter-by-error-rate.png)


### Correlazioni contestuali
<a name="observability-app-map-correlations"></a>

È possibile passare dalla vista topologica direttamente alle tracce e ai log correlati. Da qualsiasi nodo di servizio, sono disponibili le seguenti opzioni di correlazione:
+ **Visualizza tracce correlate**: apre una visualizzazione di traccia filtrata per il servizio selezionato.
+ **Visualizza log correlati**: apre una visualizzazione di log filtrata per il servizio selezionato.

# Osservabilità dell'IA
<a name="observability-ai"></a>

L'osservabilità dell'IA OpenSearch fornisce end-to-end strumenti per il monitoraggio, il debug e l'ottimizzazione dei flussi di lavoro degli agenti AI e dei modelli di linguaggio di grandi dimensioni (LLM). Basato sulle convenzioni semantiche GenAI e integrato nativamente con OpenTelemetry (OTel), offre una visibilità completa sul comportamento delle applicazioni di intelligenza artificiale in produzione.

L'osservabilità dell'IA include le seguenti funzionalità:
+ **Tracciamento degli agenti**: acquisisce le tracce di esecuzione gerarchiche tra le fasi di orchestrazione degli agenti, le chiamate LLM, le chiamate agli strumenti e le operazioni di recupero.
+ **Convenzioni semantiche GenAI: utilizza attributi standardizzati** come e per descrivere la telemetria specifica dell'intelligenza artificiale. OTel `gen_ai.system` `gen_ai.request.model` `gen_ai.usage.input_tokens`
+ **Strumentazione automatica**: acquisisci automaticamente le tracce dai framework e dai provider di intelligenza artificiale più diffusi, tra cui OpenAI, Anthropic, Amazon Bedrock e più di 20 librerie aggiuntive. LangChain
+ **Interrogazione PPL: interroga e aggrega i dati di traccia utilizzando Piped Processing** Language (PPL) direttamente dall'interfaccia utente. OpenSearch 

## Nozioni di base
<a name="observability-ai-getting-started"></a>

Questa sezione illustra come utilizzare un agente AI, inviare tracce ad Amazon OpenSearch Service e visualizzarle nell' OpenSearch interfaccia utente.

### Per installare l'SDK
<a name="observability-ai-install-sdk"></a>

Installa il pacchetto di strumentazione OpenTelemetry GenAI:

```
pip install opentelemetry-instrumentation-openai-v2 opentelemetry-sdk opentelemetry-exporter-otlp
```

### Per strumentare il codice del tuo agente
<a name="observability-ai-instrument"></a>

L'esempio seguente mostra come registrare l' OTel SDK, annotare le funzioni dell'agente con il `@observe` decoratore e arricchire gli intervalli con gli attributi GenAI.

```
from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import BatchSpanProcessor
from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import OTLPSpanExporter

# Register the tracer provider
provider = TracerProvider()
processor = BatchSpanProcessor(
    OTLPSpanExporter(endpoint="<your-osis-endpoint>")  # Use your OpenSearch Ingestion endpoint with SigV4
)
provider.add_span_processor(processor)
trace.set_tracer_provider(provider)

tracer = trace.get_tracer(__name__)

# Decorate your agent function
@observe
def run_agent(prompt: str):
    with tracer.start_as_current_span("invoke_agent") as span:
        span.set_attribute("gen_ai.operation.name", "invoke_agent")
        span.set_attribute("gen_ai.system", "openai")
        span.set_attribute("gen_ai.request.model", "gpt-4")

        # Enrich with token usage after the LLM call
        response = call_llm(prompt)
        span.set_attribute("gen_ai.usage.input_tokens", response.input_tokens)
        span.set_attribute("gen_ai.usage.output_tokens", response.output_tokens)
        return response
```

**Nota**  
Quando invii tracce ad Amazon OpenSearch Service, utilizza l'endpoint della pipeline OpenSearch Ingestion con l'autenticazione SigV4 anziché un endpoint localhost. Per ulteriori informazioni sulla configurazione delle pipeline di Ingestion, consulta. OpenSearch [Panoramica di Amazon OpenSearch Ingestion](ingestion.md)

### Per visualizzare le tracce nell'interfaccia utente OpenSearch
<a name="observability-ai-view-traces"></a>

Dopo che l'applicazione strumentata ha inviato i dati di traccia, puoi esplorarli nell' OpenSearch interfaccia utente. **Nel tuo spazio di lavoro sull'osservabilità, espandi **Discover** nella barra di navigazione a sinistra e scegli Agent Traces.**

## Interfaccia utente di Agent Tracing
<a name="observability-ai-agent-tracing"></a>

La pagina Agent Traces nell' OpenSearch interfaccia utente fornisce un'interfaccia appositamente creata per l'esplorazione, il debug e il monitoraggio delle tracce di esecuzione degli agenti LLM. Offre agli sviluppatori e agli operatori di piattaforma la piena osservabilità nelle applicazioni di intelligenza artificiale agentiche, tra cui viste di traccia gerarchiche, riepiloghi di dettaglio, visualizzazioni dei flussi e metriche aggregate.

### Architecture
<a name="observability-ai-architecture"></a>

Il diagramma seguente mostra il flusso di dati dalle applicazioni strumentate all'interfaccia utente di Agent Traces:

```
LLM Application (with OTel SDK + GenAI instrumentation)
    |
    |  OTLP (gRPC/HTTP)
    v
OTel Collector (batch, transform)
    |
    +---- OTLP ----> OpenSearch Ingestion --> OpenSearch (otel-v1-apm-span-*)
    |
    +---- Prometheus Remote Write --> Prometheus (metrics)
                                          |
                                          v
                              OpenSearch UI
                              +-- Agent Traces Plugin
```

### Prerequisiti
<a name="observability-ai-prereqs"></a>

Prima di utilizzare Agent Traces, assicurati di disporre di quanto segue:
+ Un OpenSearch cluster con dati di traccia indicizzati in `otel-v1-apm-span-*` indici.
+ OpenTelemetry strumentazione con convenzioni semantiche GenAI abilitate nell'applicazione LLM.
+ OpenSearch Inserimento configurato con il processore in cui inserire intervalli. `otel_trace_raw` OpenSearch
+ Supporto per query PPL abilitato nell'interfaccia utente. OpenSearch 

### Attributi span richiesti
<a name="observability-ai-span-attributes"></a>

Agent Traces richiede attributi span specifici per visualizzare correttamente i dati di traccia. Le tabelle seguenti descrivono i campi principali e gli attributi specifici di GenAI.

**Campi Core Span**  
Ogni intervallo deve includere i seguenti campi principali:


| Campo | Tipo | Description | 
| --- | --- | --- | 
| traceId | Stringa | Identificatore univoco per l'intera traccia. | 
| spanId | Stringa | Identificatore univoco per questo intervallo. | 
| parentSpanId | Stringa | Identificatore dell'intervallo principale. Vuoto per le estensioni principali. | 
| startTime | Time stamp | Ora in cui è iniziato l'intervallo. | 
| endTime | Time stamp | Ora in cui l'intervallo è terminato. | 
| durationInNanos | Long | Durata dell'intervallo in nanosecondi. | 
| status.code | Numero intero | Codice di stato Span (0 = non impostato, 1 = OK, 2 = errore). | 

**Attributi GenAI**  
I seguenti `gen_ai.*` attributi abilitano funzionalità specifiche dell'intelligenza artificiale nell'interfaccia utente di Agent Traces:


| Attributo | Valore di esempio | Description | 
| --- | --- | --- | 
| gen\$1ai.operation.name | chat | Il tipo di operazione GenAI. Determina la categoria di estensione. | 
| gen\$1ai.system | openai | Il sistema o il provider di intelligenza artificiale. | 
| gen\$1ai.request.model | gpt-4 | Il modello utilizzato per la richiesta. | 
| gen\$1ai.usage.input\$1tokens | 150 | Numero di token di input consumati. | 
| gen\$1ai.usage.output\$1tokens | 85 | Numero di token di output generati. | 
| gen\$1ai.response.finish\$1reasons | ["stop"] | Motivi per cui il modello ha smesso di generare. | 

### Layout della pagina e barra delle metriche
<a name="observability-ai-page-layout"></a>

La pagina Agent Traces mostra una barra delle metriche nella parte superiore che riassume le statistiche chiave su tutte le tracce visibili. Le metriche includono il numero totale di tracce, la durata media, il tasso di errore e l'utilizzo dei token. Questi valori vengono aggiornati dinamicamente in base al filtro temporale e alla query.

### Scheda Tracce
<a name="observability-ai-traces-tab"></a>

La scheda Traces elenca tutte le tracce dell'agente principale che corrispondono alla query e all'intervallo di tempo correnti. Ogni riga rappresenta una singola chiamata all'agente.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/agent-traces/traces-table.png)


La tabella seguente descrive le colonne della tabella trace:


| Colonna | Description | 
| --- | --- | 
| ID di traccia | Identificatore univoco per la traccia. Scegli il link per aprire il riquadro a comparsa dei dettagli della traccia. | 
| Nome dell'agente | Nome dell'agente che ha avviato la traccia. | 
| Stato | Stato generale della traccia (OK o Errore). | 
| Durata | Tempo totale dal primo all'ultimo intervallo della traccia. | 
| Intervalli | Numero totale di intervalli nella traccia. | 
| Token di input | Token di input totali consumati in tutte le chiamate LLM nella traccia. | 
| Token di output | Token di output totali generati in tutte le chiamate LLM nella traccia. | 
| Ora di inizio | Timestamp di inizio della traccia. | 

### Amplia le categorie
<a name="observability-ai-span-categories"></a>

Gli intervalli sono classificati in base all'attributo. `gen_ai.operation.name` Ogni categoria viene visualizzata con un colore e un'icona unici nell'interfaccia utente.


| Nome operazione | Categoria | Description | 
| --- | --- | --- | 
| invoke\$1agent, create\$1agent | Agente | Fase di orchestrazione degli agenti. | 
| chat | LLM | Chiamata di completamento della chat LLM. | 
| text\$1completion, generate\$1content | Contenuti | Operazione di generazione del testo. | 
| execute\$1tool | Strumento | Invocazione dello strumento. | 
| embeddings | Embedding | Generazione di incorporamento. | 
| retrieval | Recupero | Operazione di recupero dei dati. | 

### Scheda Spans
<a name="observability-ai-spans-tab"></a>

La scheda Estensioni mostra le singole estensioni su tutte le tracce. Puoi filtrare e ordinare gli intervalli per trovare operazioni specifiche.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/agent-traces/spans-table.png)


### Visualizza i dettagli di Trace
<a name="observability-ai-trace-details"></a>

Quando scegli un ID di traccia, si apre un pannello a tendina con due aree principali:
+ **Pannello sinistro**: visualizza l'albero di traccia, che mostra le relazioni gerarchiche padre-figlio tra gli intervalli. Include anche un DAG (grafico aciclico diretto) di flusso che visualizza il percorso di esecuzione dell'agente.
+ **Pannello destro**: contiene due schede. La scheda **Dettagli** mostra gli attributi span, gli attributi delle risorse e i metadati specifici di GenAI. La scheda **Cronologia** mostra un grafico a cascata delle durate degli intervalli e delle relative relazioni temporali.

### Interrogazione delle tracce
<a name="observability-ai-querying"></a>

Agent Traces utilizza PPL (Piped Processing Language) per il recupero di tutti i dati. È possibile scrivere interrogazioni nel pannello delle interrogazioni nella parte superiore della pagina.

**Per elencare le tracce principali**  
La seguente query restituisce le 100 tracce di root agent più recenti:

```
source = otel-v1-apm-span-*
| where parentSpanId = "" AND isnotnull(`attributes.gen_ai.operation.name`)
| sort - startTime
| head 100
```

**Per recuperare tutti gli intervalli di una traccia**  
La seguente query restituisce lo span tree completo per una traccia specifica:

```
source = otel-v1-apm-span-*
| where traceId = "trace-id"
| head 1000
```

**Per calcolare metriche aggregate**  
La seguente query calcola la durata media e l'utilizzo totale dei token raggruppati per modello:

```
source = otel-v1-apm-span-*
| where isnotnull(`attributes.gen_ai.request.model`)
| stats avg(durationInNanos) as avg_duration,
        sum(`attributes.gen_ai.usage.input_tokens`) as total_input_tokens,
        sum(`attributes.gen_ai.usage.output_tokens`) as total_output_tokens
    by `attributes.gen_ai.request.model`
```