Monitoring Java

Cette page a été rédigée il y a fort fort longtemps, et n'a pas tellement été mise à jour.

 

Vous savez, moi je ne crois pas qu'il y ait de bonne ou de mauvaise page. Moi, si je devais résumer mon wiki aujourd'hui avec vous, je dirais que c'est d'abord des rencontres. Des gens qui m'ont tendu la main, peut-être à un moment où je ne pouvais pas, où j'étais seul chez moi. Et c'est assez curieux de se dire que les hasards, les rencontres forgent une destinée... Parce que quand on a le goût de la chose, quand on a le goût de la chose bien faite, le beau geste, parfois on ne trouve pas l'interlocuteur en face je dirais, le miroir qui vous aide à avancer. Alors ça n'est pas mon cas, comme je disais là, puisque moi au contraire, j'ai pu ; et je dis merci au wiki, je lui dis merci, je chante le wiki, je danse le wiki... je ne suis qu'amour ! Et finalement, quand des gens me disent « Mais comment fais-tu pour avoir cette humanité ? », je leur réponds très simplement que c'est ce goût de l'amour, ce goût donc qui m'a poussé aujourd'hui à entreprendre une construction logicielle... mais demain qui sait ? Peut-être simplement à me mettre au service de la communauté, à faire le don, le don de soi.

Cet article présente succinctement quelques outils de monitoring et de dépannage pour Java.

Outils du JDK

Depuis le JDK 5, java intègre des outils de monitoring et des [outils de dépannage http://java.sun.com/javase/6/docs/technotes/tools/index.html#troubleshoot].

JConsole

JConsole est une console graphique qui regroupe un nombre important d’informations sur le fonctionnement d’un machine virtuelle.

Plus d’informations :

jps

jps donne la iste des programmes java en exécution.

jstat

jstat fournit des statistiques détaillées sur le fonctionnement de la machine virtuelle :

  • Compilation hotspot : -compiler, -printcompilation

  • Chargement des classes : -class

  • Utilisation du garbage collection et des zones mémoire : -gc,…​

jstatd

jstatd permet à jps et jstat d’accéder à un serveur distant.

jstack

jstack affiche la piles d’appels de chaque thread d’une JVM. Il permet de détecter des deadlocks.

jmap

jmap donne des informations d’utilisation de la mémoire :

  • Types des objets en mémoire (-histo)

  • Objets partagés

  • Mémoire heap (-heap)

  • Objets en attente de finalisation (-finalizerinfo)

jinfo

jinfo donne les propriétés système et les paramètres de lancement d’une JVM.

Outils JBoss

Les consoles fournies avec JBossAS 4 sont riches en informations, mais particulièrement peu ergonomiques. Depuis fin 2008, JBoss propose JOPR, qui est la version open source de JBoss Operation Network.