Tomcat
停止Tomcat,配置cataline文件
(1)cataline.sh,添加:
CATALINA_OPTS="${CATALINA_OPTS} -Djava.rmi.server.hostname=JMX_HOST"
CATALINA_OPTS="${CATALINA_OPTS} -Djavax.management.builder.initial="
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote=true"
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.port=JMX_PORT"
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.ssl=false"
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.authenticate=false"
(2)cataline.bat,添加:
set CATALINA_OPTS=%CATALINA_OPTS% -Djava.rmi.server.hostname=JMX_HOST
set CATALINA_OPTS=%CATALINA_OPTS% -Dcom.sun.management.jmxremote.port=JMX_PORT
set CATALINA_OPTS=%CATALINA_OPTS% -Djavax.management.builder.initial=
set CATALINA_OPTS=%CATALINA_OPTS% -Dcom.sun.management.jmxremote=true
set CATALINA_OPTS=%CATALINA_OPTS% -Dcom.sun.management.jmxremote.ssl=false
set CATALINA_OPTS=%CATALINA_OPTS% -Dcom.sun.management.jmxremote.authenticate=false
注:JMX_HOST为Tomcat的IP地址,JMX_PORT为JMX端口,通常使用12345,然后重启tomcat,JMX就开启了。
内置Tomcat
如果是jar包,则在jar包启动命令中加入如下参数:
-Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=JMX_HOST -Dcom.sun.management.jmxremote.port=JMX_PORT -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.registry.ssl=false
其中JMX_HOST为IP地址,JMX_PORT为JMX端口,通常使用12345
例如:
开启JMX前的启动命令为
java -jar app.jar
开启JMX则需改为
java -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=192.168.2.1 -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.registry.ssl=false -jar app.jar
使用新的启动命令重新启动即可。
参考:https://docs.oracle.com/javase/1.5.0/docs/guide/management/agent.html