Instant Developer

Tips&Tricks: Metodologie di debug su server di produzione Instant Developer Cloud

| 18 Febbraio 2020 | Giuseppe Lanzi
cropped metodologie debug Instant Developer

Nel rapporto con i propri clienti la velocità di risoluzione dei problemi segnalati è un elemento fondamentale, spesso più rilevante anche della qualità del prodotto stesso. Purtroppo, però, non è facile mettersi nelle medesime condizioni del cliente e replicare il caso in locale, quindi è necessario indagare i problemi direttamente sul server.

Con Instant Developer Cloud ci sono 3 strumenti che vi permettono di farlo:

  1. l’analisi dei console.log e delle query eseguite dal database;
  2. l’uso di una build con il debug attivato;
  3. i dati di Analytics.

Console.log e database log

Grazie a node.js, su Instant Developer Cloud è molto semplice scrivere una riga di log nel server: è sufficiente infatti usare il metodo console.log() come si fa normalmente con JavaScript. Il problema si presenta però nel momento della lettura del log. 

Immaginiamo di avere anche solo 10 utenti che lavorano insieme sul server e di dover leggere il log per comprendere un errore di funzionamento relativo a uno di essi. I 10 log si presenterebbero tutti mescolati tra loro e, dunque, sarebbe quasi impossibile individuare le cause di eventuali problemi.
Per fortuna Instant Developer Cloud viene in nostro aiuto permettendoci di attivare il log, sia applicativo sia di database, sulle app. Una volta che il log è attivato per un’installazione, la console comunicherà con il server per consentire all’utente di leggere i log di specifiche sessioni applicative, riconoscibili tramite il nome assegnato con app.sessionName.

Debug 1 Instant Developer

Analizzare più log separati di diverse sessioni di utenti in produzione si è rivelato estremamente utile per capire ed esaminare alcune problematiche particolari che si manifestano quando si ha una comunicazione tra più sessioni.

Se volete maggiori informazioni sul debug in produzione, potete dare un’occhiata a questo articolo

Build con debug attivato

I log di una sessione ci permettono di isolare i console.log() causati dai vari utenti e di leggerli meglio, ma l’informazione sull’errore non è ancora completa. Infatti i log non ci consentono di ripercorrere i passi del codice, ma solo di vederne gli effetti tramite i log.

Instant Developer Cloud mette a nostra disposizione uno strumento molto interessante: la build con debug attivato.

Quando si compila una build in debug, il codice è incluso in due modi: con il debug e senza il debug. Mentre l’applicazione gira sul server, viene utilizzato il codice senza il debug per non appesantire l’esecuzione. Invece, al momento dell’apertura di una determinata sessione utente, il codice comincia ad essere eseguito nella sua versione con il debug attivato in modo tale da poter sfruttare tutta la potenza del modulo di debug in full trace che conosciamo bene dall’uso dell’IDE.

Installare una build con il debug attivato è facile: basta attivare il relativo flag al momento della compilazione.

Debug 2 Instant Developer

Analytics

L’ultimo degli strumenti che ci aiuta nel debug è Analytics dal momento che, contrariamente agli altri due metodi, è sempre in funzione e raccoglie qualsiasi tipo di errore dell’applicazione. Non è nemmeno più necessario che sia l’utente a segnalare un problema per venire a conoscenza di eventuali errori applicativi.

Io stesso ho trovato più volte degli errori guardando i dati di Analytics, senza che gli utenti finali avessero il tempo di segnalarli. 

Correggere i problemi in tempi brevi dopo la segnalazione è fondamentale per mantenere e rafforzare il rapporto con il cliente, ma correggere i problemi senza che questi vengano segnalati lo è ancora più, poiché influisce sulla percezione di sicurezza che il prodotto deve fornire all’utilizzatore.

Mi è capitato di parlarne qualche anno fa al nostro evento ten2start: la strada per il prodotto perfetto non si percorre solamente con la creazione di un buona applicazione ma anche con la realizzazione di servizi adeguati per la propria clientela. 

Da questo punto di vista, Instant Developer Cloud permette di intervenire nella risoluzione dei problemi in tempi rapidi e di offrire così al cliente un servizio senza paragoni.


Giuseppe Lanzi
Technical Support Manager
Mi occupo di assistenza e consulenza tecnica, dei corsi di formazione e dei sistemi rivolti ai clienti. Amo la tecnologia e ogni tipo di nuovo gadget, mi interesso di fotografia e prendo al volo ogni occasione di scoprire un nuovo gioco.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *


Potrebbe interessarti

Instant Developer all’Evento Tech che apre il 2025

Mi chiamo Savino Carlone, per tutti sono solo “Savi” dalla nascita e sono una persona atipica per il mondo dell’informatica: preferisco la parte relazionale –...

Leggi Tutto

Instant Developer Foundation e Cloud 24.5: la prima volta insieme

Il rilascio delle versioni 24.5 di Instant Developer Foundation e Instant Developer Cloud rappresenta una grande novità: è la prima occasione in cui le due...

Leggi Tutto

Integrazione di librerie JavaScript per generare barcode

Scegliere il modo giusto per generare barcode non è semplice e la decisione che prendi può fare la differenza in termini di costi e praticità.Potresti...

Leggi Tutto

Rimani Aggiornato

Iscriviti alla nostra newsletter per ricevere aggiornamenti su novità, eventi, release, webinar e tante altre notizie sui prodotti Instant Developer.

    Presa visione dell'informativa (disponibile qui) resa da Pro Gamma SpA, acconsento al trattamento dei miei dati personali per l'invio di newsletter.*