

# OPS04-BP05 Implementazione della tracciabilità delle transazioni
<a name="ops_telemetry_dist_trace"></a>

Implementa il codice dell'applicazione e configura i componenti del carico di lavoro per l'emissione di eventi, che vengono attivati come conseguenza di singole operazioni logiche e quindi consolidati attraverso diversi limiti del carico di lavoro. Genera mappe per osservare il flusso delle tracce tra il carico di lavoro e i servizi. Ottieni informazioni dettagliate sulle relazioni tra componenti e identifica e analizza i problemi. Usa le informazioni raccolte per determinare quando è necessaria una risposta e come aiuto per identificare i fattori che contribuiscono a un problema. 

 **Risultato desiderato:** 
+  Raccolta di tracce delle transazioni nel carico di lavoro per ottenere informazioni dettagliate sulla relazione tra componenti. 
+  Generazione di mappe per comprendere meglio il flusso di transazioni ed eventi nel carico di lavoro. 

 **Anti-pattern comuni:** 
+  Implementazione di un'architettura di microservizi serverless che si estende su più account. I clienti riscontrano problemi di prestazioni intermittenti. Non riesci a identificare la funzione o il componente responsabile a causa della mancata tracciabilità delle transazioni. 
+ Presenza di un collo di bottiglia nel carico di lavoro. A causa della mancanza di tracciabilità delle transazioni, non riesci a determinare la relazione tra i componenti dell'applicazione e a identificare il collo di bottiglia.
+  L'identificatore usato per le tracce non è univoco a livello globale e causa una collisione delle tracce durante l'analisi del comportamento del carico di lavoro. 

 **Vantaggi dell'adozione di questa best practice:** 
+  La comprensione del flusso delle transazioni nel carico di lavoro fornisce informazioni dettagliate sul comportamento previsto delle transazioni. 
+  Puoi osservare le variazioni rispetto al comportamento previsto nel carico di lavoro e rispondere, se necessario. 
+  Puoi individuare le transazioni in base al rispettivo identificatore univoco, indipendentemente da dove sono state generate. 

 **Livello di rischio associato alla mancata adozione di questa best practice:** basso 

## Guida all'implementazione
<a name="implementation-guidance"></a>

 Progetta l'applicazione e il carico di lavoro affinché forniscano informazioni sul flusso delle transazioni nei componenti del sistema, I dati da includere nelle transazioni sono un identificatore di transazione univoco a livello globale, la fase della transazione, il componente attivo e il tempo necessario per completare l'attività. Utilizza queste informazioni per determinare cosa è in corso, cosa è completato e i risultati delle attività completate. 

 **Esempio del cliente** 

 Presso AnyCompany Retail tutte le transazioni sono associate a un UUID univoco a livello globale. Questo UUID viene passato tra microservizi durante le transazioni. L'UUID viene usato per creare tracce delle transazioni man mano che gli utenti interagiscono con il carico di lavoro. Con le tracce viene generata una mappa della topologia del carico di lavoro, che viene usata per risolvere i problemi del carico di lavoro e migliorare le prestazioni. 

 **Passaggi dell'implementazione** 

1.  Esegui la strumentazione delle applicazioni nel carico di lavoro per emettere tracce delle transazioni. A questo scopo, puoi generare un identificatore univoco per ogni transazione e passarlo tra applicazioni. 

   1.  Puoi usare la strumentazione automatica in [AWS Distro per OpenTelemetry](https://aws-otel.github.io/) per implementare tracce nelle applicazioni esistenti senza modificarne il codice. 

1.  Genera mappe per la topologia delle applicazioni. Usa le mappe per migliorare le prestazioni, ottenere informazioni dettagliate e semplificare la risoluzione dei problemi. 

   1.  [AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) può generare mappe delle applicazioni nel carico di lavoro. 

 **Livello di impegno per il piano di implementazione:** medio. L'implementazione di tracce delle transazioni può richiedere un impegno moderato per lo sviluppo. 

## Risorse
<a name="resources"></a>

 **Best practice correlate:** 
+  [OPS04-BP01 Implementazione della telemetria dell'applicazione](ops_telemetry_application_telemetry.md) – La telemetria delle applicazioni controlla la tracciabilità e la gestione delle transazioni e deve essere implementata per prima. 

 **Documenti correlati:** 
+ [ Individuazione dei problemi delle applicazioni e ricezione di notifiche con AWS X-Ray Insights ](https://aws.amazon.com/blogs/mt/discover-application-issues-get-notifications-aws-x-ray-insights/)
+ [ Wealthfront utilizza AWS X-Ray per l'analisi e il debug delle applicazioni distribuite ](https://aws.amazon.com/blogs/mt/wealthfront-utilizes-aws-x-ray-analyze-debug-distributed-applications/)
+ [ Nuova funzionalità per AWS Distro per OpenTelemetry: disponibilità a livello generale del supporto per le tracce ](https://aws.amazon.com/blogs/aws/new-for-aws-distro-for-opentelemetry-tracing-support-is-now-generally-available/)

 **Video correlati:** 
+ [AWS re:Invent 2018: Approfondimento di AWS X-Ray: monitoraggio di applicazioni moderne (DEV324) ](https://www.youtube.com/watch?v=5MQkX57eTh8)
+ [AWS re:Invent 2022: Creazione di applicazioni osservabili con OpenTelemetry (BOA310) ](https://www.youtube.com/watch?v=efk8XFJrW2c)
+ [AWS re:Invent 2022: Visibilità con il modello open source (COP301-R) ](https://www.youtube.com/watch?v=2IJPpdp9xU0)
+ [ Acquisizione di dati di traccia con AWS Distro per OpenTelemetry ](https://www.youtube.com/watch?v=837NtV0McOA)
+ [ Ottimizzazione delle prestazioni delle applicazioni con AWS X-Ray](https://www.youtube.com/watch?v=5lIdNrrO_o8)

 **Esempi correlati:** 
+ [AWS X-Ray Multi API Gateway Tracing Example ](https://github.com/aws-samples/aws-xray-multi-api-gateway-tracing-example)

 **Servizi correlati:** 
+  [AWS Distro per OpenTelemetry](https://aws-otel.github.io/) 
+  [AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 