Tracing
copia linkIn cosa consiste
La modalità di tracing consente di attivare la raccolta delle informazioni di debug post esecuzione anche quando l'applicazione è usata dagli utenti finali. In questo caso però, man mano che l'applicazione viene utilizzata, le informazioni di debug più vecchie vengono scartate per evitare di utilizzare troppa memoria nell'application server.
In particolare l'applicazione mantiene in memoria i dati di debug completi relativi ad un certo numero configurabile di operazioni (finestra attiva); quando il numero di operazioni effettuate cresce, i dati di debug delle operazioni più vecchie vengono sintetizzati fino a raggiungere l'ampiezza della finestra passiva. Se l'utente continua ad utilizzare l'applicazione le operazioni più vecchie vengono scartate dalla memoria ed eventualmente salvate su database.
E' possibile configurare il comportamento del sistema di tracing, così come l'ampiezza della finestra attiva e passiva utilizzando i metodi della libreria di tracing.
Ulteriori dati raccolti
Durante l'esecuzione dell'applicazione con il tracing attivo, verranno raccolte ulteriori informazioni sullo stato dell'interfaccia utente in modo che chi analizzerà i dati di debug potrà avere una schematica rappresentazione di quello che l'utente ha visto.
Recupero dei dati
Quando il modulo tracing è attivo è possibile richiedere l'invio di tutti i dati di debug della sessione corrente ad un indirizzo e-mail predefinito. Questo avviene quando l'utente preme il bottone di richiesta di assistenza, oppure se il framework o il programma effettuano una richiesta di invio dei dati di trace. E' possibile intercettare l'evento di invio dati di trace in modo da poterne personalizzare il comportamento secondo le proprie esigenze specifiche.
Considerazioni sulle performance e sull'utilizzo di memoria
Il sistema di debug post-esecuzione utilizza memoria e tempo macchina per effettuare la raccolta dei dati di debug. L'entità delle risorse utilizzate dipende principalmente dalla complessità degli algoritmi eseguiti ed è facilmente apprezzabile tramite test diretti sull'applicazione mentre essa è in fase di test. In questa fase è possibile quindi configurare il sistema di debug e tracing per evitare di utilizzare troppe risorse di elaborazione, ad esempio escludendo dal debug metodi complessi già testati.
Per ottenere i migliori risultati si consiglia di osservare le seguenti linee guida:
- Durante la fase di sviluppo utilizzare il sistema di debug raccogliendo tutti i dati a disposizione.
- Durante le fasi di test si consiglia di lasciare attivo il sistema di debug ma di disattivare la raccolta iniziale dei dati di debug. In questo modo chi testa l'applicazione potrà utilizzarla come se fosse in produzione, ma può attivare il sistema di debug se rileva delle anomalie di funzionamento.
- Durante l'utilizzo da parte degli utenti finali, si consiglia di attivare il sistema di tracing, ma sempre disattivando la raccolta iniziale dei dati di debug. Tale raccolta potrà essere attivata automaticamente o su richiesta dell'utente al verificarsi di situazioni di errore, oppure programmaticamente se l'utente utilizza funzioni non ancora consolidate. In questo modo si minimizzerà l'effetto del tracing sulle performance del sistema senza perderne i vantaggi.
Ultima modifica: 25/10/2016 / Validità: da 7.5.3400