jconsole은 jdk1.5에서부터 기본제공되는 툴로 JMX표준을 이용해 간단하게 JVM상의 Thread, Heap Memory 및 VM정보를 모니터링하게 해주는 툴이다.
다음과 같이 셋팅 해 주면 원격서버의 메모리 Leak현상 및 JVM상태를 모니터링 할 수 있다.

1.톰캣을 사용한다면 Catalina.sh나 Catalina.cmd에 항목추가(인증없이 사용할 때)
CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=사이트이름"

2.사용자인증을 추가해서 사용할 때
CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true -Djava.rmi.server.hostname=사이트이름 -Dcom.sun.management.jmxremote.password.file=$CATALINA_HOME/conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=$CATALINA_HOME/conf/jmxremote.access"; 

3. jmxremote.password 파일 샘플
user1 password1 
user2 password2

4. jmxremote.access 파일 샘플
user1 readonly
user2 readwrite

5. jconsole실행방법
   JDK가 인스톨된 디렉토리의 bin에서 jconsole을 실행시킨다.


6.  Overview화면


7. Memory화면



8. Threads화면