一、远程java进程配置
采用无认证登录方式的配置方式,java进程最少需要配置如下项:
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=1099
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Djava.rmi.server.hostname=192.168.1.13
以上都加入到启动命令行中可能有点长,也有简单的方式,只用添加如下JVM参数:
-Dcom.sun.management.config=/app/data/jmx.properties
如果采用认证方式,jmx.properties中的内容:
com.sun.management.jmxremote
com.sun.management.jmxremote.port=1099
com.sun.management.jmxremote.authenticate=true
com.sun.management.jmxremote.ssl=falsecom.sun.management.jmxremote.password.file=/app/data/jmx.password
com.sun.management.jmxremote.access.file=/app/data/jmx.access
jmx.access中内容:
controlRole readwrite
jmx.password中内容:
controlRole 12345678
二、本地配置
如果使用JMX的方式连接,则JMX URL:
service:jmx:rmi:///jndi/rmi://192.168.1.13:1099/jmxrmi
如果使用jstatd,则先要创建文件jstatd.all.policy,写入内容
grant codebase "file:${java.home}/../lib/tools.jar" {
permission java.security.AllPermission;
};
然后,启动命令
jstatd -J-Djava.security.policy=C:/jstatd.all.policy -p 2000
JVisualVM就可以连接此jstatd了。
参考文档
jvisualvm远程监控tomcat
https://ihuangweiwei.iteye.com/blog/1219302
https://www.cnblogs.com/wuweidong/p/5815348.html
https://www.cnblogs.com/leocook/p/jvisualvmandtomcat.html
Monitoring and Management Using JMX Technology
https://docs.oracle.com/javase/8/docs/technotes/guides/management/agent.html