我本地是Windows系统,Windows+r,输入cmd,进入黑窗口输入Jvisualvm,回车
同时弹出可视化监控界面
VisualVM可以监控本地JVM运行情况,也可以监控远程机器上的JVM运行情况。
本地监控无需配置,只要打开某个JAVA程序就会自动的加入到本地监控中。
这些都是自动加载进来的。
监控本地的idea。
要进行远程监控,就需要配置了。本机的VisualVM需要和远程的JVM进行通信,VisualVM目前支持两种remote connection方式。分别是jstatd方式和JMX方式。
romote 远程 connection 连接
接下来我使用的是JMX方式。
1.修改远程主机的JDK配置文件。
a.进入JAVA_HOME\jre\lib\management\目录
b.拷贝jmxremote.password.template这个文件到当前目录, 并改名为jmxremote.password
c.打开jmxremote.password文件,去掉 # monitorRole QED 和 # controlRole R&D 这两行前面的注释符号
2.修改远程主机TOMCAT的配置文件。(我这里监控TOMCAT容器内部署的应用)
a.进入TOMCAT_HOME\bin目录
b.打开catalina.sh文件,加入如下信息:
JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=192.168.18.30,配置远程主机的ip。
-Dcom.sun.management.jmxremote=true
-Dcom.sun.management.jmxremote.port=18999,指定暴露的JMX端口。
-Dcom.sun.management.jmxremote.ssl=false,指定是否使用SSL。
-Dcom.sun.management.jmxremote.authenticate=false",指定是否需要密码才能够创建JMX连接。
c.重启Tomcat
在本地VisualVM上建立远程连接
好了,这就监控上了。