我有一个带有嵌入式Jetty的spring boot应用程序,需要使用JMX监视应用程序。
只要我在Windows开发环境中启动应用程序,我就可以使用jconsole访问JMX信息(JConsole提供了自己连接的进程) 但是,只要将应用程序作为带有以下参数的可执行jar运行,端口将无法使用,并且无法与jconsole连接
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=9010
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.local.only=false
-Djava.rmi.server.hostname=[server ip]
-Djava.rmi.activation.port=9011
netstat -tulpn既不返回端口9010也不返回端口9011,我无法通过jconsole连接。
MBean等可用,因为我使用jolikai将JMX信息公开为JSON,它工作正常,但不适合我们的监控基础架构。
答案 0 :(得分:1)
尝试以下参数。
set JMX_OPTIONS=-Dcom.sun.management.jmxremote.port=8014
set JMX_OPTIONS= %JMX_OPTIONS% -Dcom.sun.management.jmxremote.ssl=false
set JMX_OPTIONS= %JMX_OPTIONS%-Dcom.sun.management.jmxremote.authenticate=false
set JMX_OPTIONS= %JMX_OPTIONS%-Dcom.sun.management.jmxremote.localConnectorAddress=10.250.0.10