Monitorando aplicações java com JConsole

Muitos nem sabem que existe, mas o JDK traz uma ótima ferramenta de monitoramento de aplicações Java: é o JConsole. O JConsole está no diretório $JAVA_HOME/bin, onde $JAVA_HOME é o diretório onde o JDK foi instalado. O JConsole pode ser utilizado tanto para monitoramento de aplicações locais quanto aplicações remotas. Neste post, irei explicar como monitoramos aplicações locais.

Para permitir que o JConsole monitore uma aplicação, é necessário que se passe o seguinte parâmetro para a JVM quando iniciamos a aplicação:

-Dcom.sun.management.jmxremote

Exemplo:
* execução de um jar de forma “normal”:
java -jar Aplicacao.jar

* execução de um jar com o parâmetro para monitoramento:
java -Dcom.sun.management.jmxremote -jar Aplicacao.jar

Após executar a aplicação desta forma, basta abrir o Jconsole. A aplicação irá estar na lista do JConsole. como mostra a imagem abaixo:

JConsole - Nova Conexão

JConsole - Nova Conexão

Basta escolher a aplicação e clicar em connect.

A interface do JConsole é composta por seis abas:

Overview: informações gerais sobre a aplicação;
Memory: Informações sobre o uso de memória;
Threads: Informações sobre o uso de threads;
Classes: Informações sobre o carregamento de classes da aplicação;
VM Summary: Informações gerais sobre a VM e da aplicação monitorada;
MBeans: Informações sobre os MBeans registrados.

Desta forma, é possível monitorar toda a aplicação: quantas classes ela carrega, quantas threads ela dispara, quanto de memória ela utiliza, etc.

JConsole - overview

JConsole - overview

JConsole - Memory

JConsole - Memory

JConsole - VM Summary

JConsole - VM Summary

Ao meu ver, o mais interessante do JConsole é monitorar o uso de memória das aplicações, e assim alocar corretamente a quantidade de memória correta para ela 😀

Em um outro post irei explicar como se faz este gerenciamento de memória… e também como monitorar aplicações remotas com o JConsole.

Abraço!

Deixe um Comentário

2 Comentários.

  1. Obrigado pelo seu post. Criei um post informando como passar o parâmetro para iniciar a aplicação java no Eclipse.
    http://boasnovasetc.blogspot.com/2010/11/monitorando-aplicacoes-java-com.html

  2. Excellent!Thanks 😛

Deixe um Comentário


NOTA - Você pode usar estesHTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>