IT_Programming/Dev Tools

jconsole로 톰캣 서버 원격 모니터링 하기

JJun ™ 2011. 4. 3. 12:13

-----------------------------------------------------------------------------------------------

출처: http://avatar72.tistory.com/101

-----------------------------------------------------------------------------------------------

 

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