Palavras-chave: Java, jps, listagem de processos, parâmetros da JVM
O JDK 6 fornece algumas ferramentas de monitoração e diagnóstico de problemas que podem ser úteis no dia-a-dia de um ambiente de produção. A mais básica delas é o jps, que lista todos os processos Java que estão sendo executados na máquina.
Por exemplo, executando-se o comando sem parâmetros, são listados os identificadores (PIDs) e os nomes das classes que inicializaram cada processo (aquelas cujo método main foi chamado):
$ jps 12647 startup.jar 12777 Bootstrap 12972 Jps
Se você já sabe quais programas estão executando, provavelmente, só esta informação já lhe será suficiente. Mas, se quer mais detalhes, pode tentar as opções -l e -v, que mostram o nome completo da classe principal e os parâmetros da JVM:
$ jps -lv 12647 /opt/eclipse/./startup.jar -Xms40m -Xmx256m 12777 org.apache.catalina.startup.Bootstrap -Djava.util.lo... 13012 sun.tools.jps.Jps -Dapplication.home=/usr/lib/jvm/ja...
Nestes exemplos, os processos Java da máquina eram Eclipse (pid 12647), Tomcat (12777) e o próprio jps (12972 e 13012). Observe que a listagem de parâmetros foi abreviada.
O jps realmente ajuda. Apenas um complemento. O jps irá listar apenas processos que o usuário tem permissão para ver. Um usuário ordinário, não irá conseguir ver o PID de root, por exemplo.