OPS04-BP01 Implementazione della telemetria dell'applicazione
La telemetria dell'applicazione è la base su cui si fonda l'osservabilità del carico di lavoro. L'applicazione deve trasmettere una telemetria in grado di fornire approfondimenti sullo stato dell'applicazione stessa e sul raggiungimento dei risultati aziendali. Dalla risoluzione dei problemi alla misurazione dell'impatto di una nuova funzionalità, la telemetria dell'applicazione garantisce informazioni su cui basare la creazione, il funzionamento e l'evoluzione del carico di lavoro.
La telemetria dell'applicazione è costituita da parametri e registri. I parametri sono informazioni diagnostiche, ad esempio il polso o la temperatura, e vengono impiegati in maniera collettiva per descrivere lo stato dell'applicazione. La loro raccolta nel tempo può servire per sviluppare indicatori di riferimento e rilevare anomalie. I registri sono messaggi inviati dall'applicazione in merito al suo stato interno o a eventi che si verificano. Sono esempi di eventi registrati i codici di errore, gli identificatori di transazione e le azioni dell'utente.
Risultato desiderato:
-
L'applicazione trasmette parametri e registri che forniscono informazioni in merito alla sua integrità e al raggiungimento dei risultati aziendali.
-
I parametri e i registri sono archiviati centralmente per tutte le applicazioni del carico di lavoro.
Anti-pattern comuni:
-
L'applicazione non emette telemetria. Sei costretto a fare affidamento sui tuoi clienti per informarti quando c'è qualcosa che non va.
-
Un cliente ha segnalato che la tua applicazione non risponde. Non disponi di una telemetria e non sei in grado di confermare l'effettiva esistenza del problema o definirlo senza utilizzare l'applicazione per comprendere l'attuale esperienza utente.
Vantaggi dell'adozione di questa best practice:
-
Possibilità di conoscere lo stato di integrità dell'applicazione, l'esperienza utente e di sapere se i risultati aziendali sono stati raggiunti.
-
Possibilità di reagire rapidamente alle modifiche dello stato di integrità dell'applicazione.
-
Possibilità di sviluppare tendenze in merito allo stato di integrità dell'applicazione.
-
Possibilità di prendere decisioni più informate sul miglioramento dell'applicazione.
-
Possibilità di rilevare e risolvere più rapidamente eventuali problemi con l'applicazione.
Livello di rischio associato se questa best practice non fosse adottata: Elevato
Guida all'implementazione
Per implementare l'applicazione della telemetria sono necessari tre passaggi: identificare una posizione in cui archiviare la telemetria, identificare una telemetria che descriva lo stato dell'applicazione e dotare l'applicazione degli strumenti per trasmettere la telemetria.
Esempio del cliente
AnyCompany Retail ha un'architettura basata sui microservizi. Nell'ambito dell'iter progettuale dell'architettura, l'azienda identifica una telemetria dell'applicazione utile per capire lo stato di ciascun microservizio. Ad esempio, il servizio legato al carrello dell'utente trasmette una telemetria relativa a eventi come l'aggiunta al carrello, l'abbandono del carrello e il tempo che è servito per aggiungere un articolo al carrello. Per tutti i microservizi è prevista la registrazione di errori, avvisi e informazioni sulle transazioni. La telemetria viene inviata a Amazon CloudWatch per l'archiviazione e l'analisi.
Passaggi dell'implementazione
-
Il primo passaggio consiste nell'identificare una posizione centrale in cui archiviare la telemetria per le applicazioni del carico di lavoro. Il punto scelto deve supportare sia la raccolta della telemetria che le capacità di analisi. Il rilevamento delle anomalie e gli approfondimenti automatici sono caratteristiche consigliate.
-
Amazon CloudWatch
può garantire la raccolta della telemetria, dashboard, analisi e funzionalità di generazione di eventi.
-
-
Per identificare la telemetria necessaria per le tue esigenze, inizia rispondendo a questa domanda: qual è lo stato della mia applicazione? L'applicazione deve emettere metriche e registri in grado di rispondere in modo collettivo a queste domande. Se non è possibile rispondere con la telemetria dell'applicazione esistente, si potrà lavorare con le figure che si occupano di business e di progettazione per creare un elenco di requisiti di telemetria.
-
Nel corso dell'identificazione e dello sviluppo di una nuova telemetria per l'applicazione, è possibile chiedere una consulenza tecnica agli esperti del team Account AWS.
-
-
Una volta identificata la soluzione di telemetria da aggiungere, si potrà lavorare con le figure che si occupano della progettazione per dotare l'applicazione degli strumenti necessari.
-
AWS Distro for Open Telemetry
fornisce API, librerie e agenti per la raccolta della telemetria dell'applicazione. Questo esempio mostra come dotare un'applicazione JavaScript di parametri personalizzati . -
Se vuoi conoscere i servizi di osservabilità offerti da AWS, partecipa al One Observability Workshop
o richiedi assistenza al nostro team Account AWS. -
Per maggiori approfondimenti sulla telemetria dell'applicazione leggi l'articolo Strumentazione dei sistemi distribuiti per la visibilità operativa
nella libreria di Amazon Builder, che spiega come Amazon esegua la strumentazione delle applicazioni e può servire come guida per lo sviluppo delle tue linee guida di strumentazione.
-
Livello di impegno per il piano di implementazione: alto La strumentazione dell'applicazione e la centralizzazione dell'archiviazione della telemetria possono richiedere investimenti significativi.
Risorse
Best practice correlate:
OPS04-BP02 Implementazione e configurazione della telemetria del carico di lavoro - La telemetria dell'applicazione è un componente della telemetria del carico di lavoro. Per conoscere l'integrità del carico di lavoro in generale è necessario conoscere l'integrità delle singole applicazioni che lo compongono.
OPS04-BP03 Implementazione della telemetria dell'attività degli utenti - La telemetria dell'attività utente è spesso un sottoinsieme della telemetria dell'applicazione. L'attività utente, ad esempio eventi di aggiunta al carrello, flussi di clic o transazioni completate, fornisce informazioni dettagliate sull'esperienza utente.
OPS04-BP04 Implementazione della telemetria delle dipendenze - I controlli di dipendenza sono correlati alla telemetria dell'applicazione e possono essere inclusi nella propria applicazione. Se quest'ultima si appoggia a dipendenze esterne, ad esempio DNS o un database, può trasmettere parametri e registri riguardanti la reperibilità, i timeout e altri eventi.
OPS04-BP05 Implementazione della tracciabilità delle transazioni - Il tracciamento delle transazioni in un carico di lavoro richiede che ogni applicazione trasmetta informazioni sulle modalità con cui elabora gli eventi condivisi. Il modo in cui le singole applicazioni gestiscono questi eventi viene trasmesso tramite la relativa telemetria dell'applicazione.
OPS08-BP02 Definizione delle metriche del carico di lavoro - I parametri del carico di lavoro sono gli indicatori chiave del suo stato di integrità. I parametri chiave dell'applicazione fanno parte dei parametri del carico di lavoro.
Documenti correlati:
-
AWS Builders Library: strumentazione di sistemi distribuiti per visibilità operativa
-
Whitepaper sull'eccellenza operativa AWS Well-Architected - progettazione della telemetria
-
Implementazione di registrazione e monitoraggio con Amazon CloudWatch
-
Monitoraggio dell'integrità e delle prestazioni dell'applicazione con AWS Distro for OpenTelemetry
-
Inizia a creare - Come monitorare le applicazioni in modo efficace
Video correlati:
Esempi correlati:
Servizi correlati: