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화면



티스토리 툴바