L'importanza del tracciamento nell'Ingegneria del Software
L'ingegneria del software implica l'uso specializzato del tracciamento, che consiste nella registrazione delle richieste mentre scorrono attraverso un'applicazione. Queste informazioni sono utilizzate per la risoluzione dei problemi e il debug, e possono anche essere utilizzate da amministratori di sistema, personale di supporto tecnico o strumenti di monitoraggio per diagnosticare problemi comuni. Si tratta di una preoccupazione trasversale che è sempre più importante sia per le applicazioni tradizionali che per quelle distribuite. Per essere efficace, il tracciamento deve catturare accuratamente tutte le operazioni e le attività all'interno di un'applicazione.
Quando applicato alle applicazioni e ai servizi, il tracing registra l'intera attività della richiesta su tutti i servizi. Queste informazioni includono il nome, i timestamp di inizio e fine e altri metadati. Inoltre, il tracing posiziona i span nell'ordine corretto per un'applicazione distribuita. Spesso è difficile determinare la causa principale di un fallimento nelle applicazioni distribuite, poiché ci sono più punti di fallimento. Ciò comporta una diagnosi più lenta e SLA più bassi.
A differenza del monitoraggio, il tracing è un sistema riutilizzabile, distribuito e altamente scalabile. Quando si implementa un'architettura a microservizi, sarà necessario creare molteplici tracce per raccogliere informazioni dettagliate sulle prestazioni di ogni servizio. Ciò significa che la stessa applicazione può essere eseguita su molte posizioni, server diversi e ambienti diversi. Senza la capacità di tracciare queste richieste, non possono essere facilmente risolte. Invece, sarà necessario creare un'applicazione di tracciamento centralizzata per raccogliere queste informazioni.










