VisualVM监控远程tomcat

VisualVM监控远程tomcat


1.tomcat/bin下

vim setenv.sh

export CATALINA_OPTS="-XX:MaxPermSize=256m -Xms2048m -Xmx2048m -Djava.rmi.server.hostname=172.16.18.30 -Dcom.sun.management.jmxremote.port=9988 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"

其中java.rmi.server.hostname必须是本机的ip地址


chmod a+w setenv.sh


2.微服务程序直接在启动命令后追加虚拟机参数

nohup java -jar -server echo-service-1.0.0.jar -XX:MaxPermSize=256m -Xms2048m -Xmx2048m -Djava.rmi.server.hostname=172.16.18.30 -Dcom.sun.management.jmxremote.port=9988 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false &


3.VisualVM连接远程服务器有两种方式:JMX和jstatd,两种方式都不能完美支持所有功能,例如JMX不支持VisualGC,jstatd不支持CPU监控,实际使用可同时配置上并按需选用。


下面介绍如何配置jstatd连接方式,实现使用visualgc插件查看远程服务器上java程序的gc情况:

3.1.修改远程服务器上java设置

vi $JAVA_HOME/jre/lib/security/java.policy

在文件末位的};前添加

permission java.security.AllPermission;


3.2.cd $JAVA_HOME/bin

./jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=172.16.18.30(远程服务器IP)


3.3.本地启动VisualVM,因为在配置JMX时已经添加过服务器节点,如果配置正确,通常VisualVM会自动检测到jstatd连接并添加节点



参考:https://blog.csdn.net/Sloth_Sloth/article/details/78026116

你可能感兴趣的:(VisualVM监控远程tomcat)