Utilizzare Log4j per controllare le nostre applicazioni Java

Vediamo come iniziare ad utilizzare molto velocemente Log4J, potente tool della Apache Foundation che ci permette di tenere sotto controllo errori, warning e quant’altro ci possa interessare, della nostra applicazione.

Log4J è senza dubbio uno strumento fondamentale per una applicazione che necessiti di un controllo approfondito del suo stato di vita.  Probabilmente una volta iniziato ad utilizzarlo non smetteremo più, sostituendolo addirittura al classico “System.out.println(“”)” tanto usato in fase di test e debugging.

Come tutti i prodotti della Apache Foundation anche questo è opensource. Cominciamo scaricando il pacchetto. L’installazione è abbastanza semplice, si tratta solo di estrarre dallo zip scaricato il file jar che contiene le classi e includerlo nel nostro progetto. Probabilmente vorrete includerlo nelle librerie sempre disponibili per le vostre applicazioni server, in questo caso, se usate tomcat, copiatelo in: common/lib

Fatto questo, dobbiamo configurare il logger per l’uso che dobbiamo farne nella nostra applicazione. Esistono infinite opzioni e svariati ambiti di utilizzo, ma per le prime volte credo basterà utilizzare un file di configurazione standard, salvandolo come log4j.properties

Con questa configurazione, il log verrà visualizzato sulla console e contemporaneamente salvato su file, a blocchi di 100kb. L’ultimo log lo troveremo salvato in NomeProgramma.log, gli altri in file dal nome consecutivo : NomeProgramma.log.1, NomeProgramma.log.2. In pratica andiamo a settare il livello di errore che vogliamo visualizzare e salvare.

Poi nell’applicazione possiamo sbizzarrirci nell’inserire tutti i messaggi che vogliamo, facendo attenzione a diversificare i livelli di “pericolosità”. In questo modo, per visualizzare solo una parte dei commenti e non doversi districare in una giungla di errori, basterà modificare il file di proprietà, senza cambiare nulla nel codice.
I livelli sono:

  • Debug per i messaggi di “debugging”.
  • Info per i messaggi di tipo “verbose”.
  • Warn per i messaggi di “warning”.
  • Error per i messaggi di errore.
  • Fatal per i messaggi di errore grave (con crash dell’applicazione).
  • Log per i messaggi di log.
  • All per tutti i messaggi.

 

Possiamo scegliere diversi tipi di output dei log:

  • ConsoleAppender per visualizzarli nella console
  • FileAppender per salvarli in un unico file
  • RollingFileAppender per salvarli in più file di grandezza definita
  • DailyRollingFileAppender per salvarli in file diversi a seconda della data

 

Esistono anche diversi tipi di Layout:

  • PatternLayout : Layout testuale
  • HTMLLayout : Layout Html
  • XMLLayout : Layout Xml
  • TTCCLayout : Altro tipo di Layout sconosciuto ai più 😉

 

Utilizzare Log4J nell’applicazione è semplicissimo, basta istanziare una Category:

oppure

Scrivere un messaggio è immediato:

oppure

e via dicendo, con metodi che hanno lo stesso nome del livello di errore.

Lascia un commento

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