Non tutti sono soliti loggare cosa sta succedendo durante l’esecuzione di un’applicazione. E questo e’ il MALE, c’e’ poco da dire! Altri invece, pur loggando, non sanno mai quando loggare come trace, debug, info oppure warning, e spesso si ritrovano ad usare uno solo di questi valori, assieme al canonico error per segnalare l’accadimento di disastri.
Ho trovato su questo post una guida che puo’ aiutare a decidere “dove va cosa”:
ERROR: something terribly wrong had happened, that must be investigated immediately. No system can tolerate items logged on this level. Example: NPE, database unavailable, mission critical use case cannot be continued.
WARN: the process might be continued, but take extra caution. Actually I always wanted to have two levels here: one for obvious problems where work-around exists (for example: “Current data unavailable, using cached values”) and second (name it: ATTENTION) for potential problems and suggestions. Example: “Application running in development mode” or “Administration console is not secured with a password”. The application can tolerate warning messages, but they should always be justified and examined.
INFO: Important business process has finished. In ideal world, administrator or advanced user should be able to understand INFO messages and quickly find out what the application is doing. For example if an application is all about booking airplane tickets, there should be only one INFO statement per each ticket saying “[Who] booked ticket from [Where] to [Where]“. Other definition of INFO message: each action that changes the state of the application significantly (database update, external system request).
Continue reading ‘Livelli di logging e consigli per usarli’ »


Mi e’ capitato di notare che gli ultimi contest organizzati da Google includono l’Italia tra i paesi banditi dalla competizione.
Arriva sempre, in un colloquio di lavoro, il momento in cui l’esaminatore chiede al candidato se ha qualche domanda da fare a proposito dell’azienda. Un momento fondamentale per approfondirne la conoscenza dato che, a meno di avere amici che gia’ ci lavorano, e’ difficile reperire in giro queste utilissime informazioni da “internals”, da cui potrebbe anche dipendere la vostra scelta finale.
In attesa del terzo capitolo della saga, con i miei amici ci stiamo divertendo, di tanto in tanto, a fare qualche partita con Diablo II Lord of Destruction. Creato nell’ormai lontano 2001, oggi anche il piu’ banale dei netbook puo’ farlo girare senza problemi, compreso l’host di partite in LAN. Ho comunque voluto installarlo sulla mia Ubuntu Maverick 10.10 a 64 bit, utilizzando wine e qualche configurazione aggiuntiva.