使用java visualvm和JMX进行远程监控

时间:2016-06-29 07:33:01

标签: java openstack visualvm karaf jvisualvm

我想用jvisualvm(或jconsole)监视远程运行的java(spring boot)应用程序。在本地运行时,我可以在jvisualvm和jconsole中看到托管bean。远程运行时我无法连接。我尝试了几个不同的java进程(例如使用spring xd)。在SO和Google上寻找答案并没有帮助。

这些是我的JAVA_OPTS(在远程主机上):

$ echo $JAVA_OPTS
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9010 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=10.106.138.210

远程主机上的java版本(centos linux vm)是:

$ java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)

本地计算机上的Java版本(Mac OS)略有不同:

java in windows machine

$ java -version    
java version "1.8.0_40"
Java(TM) SE Runtime Environment (build 1.8.0_40-b25)
Java HotSpot(TM) 64-Bit Server VM (build 25.40-b25, mixed mode)
In jvisualvm I add the remote connection as follows (tried both with ssl connection and without):

当我通过JVISUALVM连接远程java应用程序时,  10.106.138.210:9010

我得到了错误,

Cannot connect to 10.106.138.210:9010 service:jmx:rmi:///jndi/rmi://10.106.138.210:9010/jmxrmi

请帮帮我

1 个答案:

答案 0 :(得分:0)

由于网络问题,您很可能无法连接,例如您使用的IP地址不正确,防火墙阻止了连接,或return break continue throw 进程导致您无法连接。重新连接到isn实际上正在侦听端口9010.此命令应该远程成功指示与TCP / IP的连接:

java

参考:

https://visualvm.java.net/jmx_connections.html

相关问题