Javamelody: un utile strumento di monitoraggio delle webapp Java

Il monitoraggio di un applicativo java, inteso come
controllo della memoria allocata, della percentuale di CPU utilizzata e
via dicendo, viene effettuato con poca frequenza e tipicamente solo
quando sorgono problemi. Javamelody
è uno strumento semplice da usare e da inserire in una web application
che consente con poco sforzo di ottenere risultati soddisfacenti.

Vi spiego di seguito la procedura per integrare Javamelody in una web application java. La prima cosa da fare è scaricare dal sito ufficiale
l’ultima versione disponibile del pacchetto. Fra le varie versioni
cercate quella compressa con zip. Apritelo e tenetevi da parte i file
javamelody.jar e jrobin-x.jar. Aggiungete i 2 jar alla directory lib
della vostra webapp. Poi modificate il vostro web.xml inserendo le
seguenti righe:

<filter>
  <filter-name>monitoring</filter-name>
  <filter-class>net.bull.javamelody.MonitoringFilter</filter-class>
</filter>
<filter-mapping>
   <filter-name>monitoring</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
   <listener-class>net.bull.javamelody.SessionListener</listener-class>
</listener>

A questo punto rideploiate la vostra webapp ed accedete con un
browser alla pagina relativa alle statistiche di monitoraggio,
accessibile tramite l’indirizzo che ha questo schema generale:

http://<server_host>:<server_port>/<context>/monitoring

Ad esempio, nel mio caso ho provato il monitoring su una webapp chiamata ( in modo molto originale :-)
) test_javamelody, deploiata su un tomcat in locale sulla classica
porta 8080. Quindi l’indirizzo web per il monitoraggio nel mio caso è
http://localhost:8080/test_javamelody/monitoring. La pagina che si
ottiene come risultato fornisce informazioni specifiche della web
application o generiche del sistema su cui il servizio è attivo, grazie
alle quali si può valutare l’andamento istantaneo e nel tempo di vari
parametri critici. Vi riporto di seguito una lista delle informazioni
fornite e le stesse relative alla web application di test:

  • grafici dell’utilizzo di memoria e CPU, numero di sessioni HTTP
    attive, thread attivi, connessioni JDBC attive ed utilizzate, numero di
    richieste http (con indicazione di quelle andate in errore), il numero
    di query SQL eseguite (con indicazione di quelle andate in errore),
    tempo di utilizzo del gargabe collector, numero di file aperti
  • i valori istantanei dell’utilizzo di memoria;
  • le statistiche relative alle richieste HTTP, SQL, agli errori HTTP e di sistema;
  • informazioni sul sistema operativo, sulla Java Virtual Machine in uso, sul server utilizzato.

Nel complesso Javamelody si è rivelato uno strumento molto utile e semplice da utilizzare, anche per effettuare verifiche in ambienti di produzione.

Grafici generali

Grafici avanzati

Consumo di memoria

Statistiche

Informazioni sul sistema

Lascia un commento