我有一个使用underow作为嵌入式容器的spring-boot应用程序。我正在尝试启用远程JMX访问。该应用程序被部署为可执行jar,如果这有任何区别。
到目前为止,我已尝试使用-Dcom.sun.management.jmxremote属性集系列启动jar,如此处How to access Spring-boot JMX remotely所述。 它不起作用。
由于underow是WildFly和JBoss AS的“兄弟”项目,我还尝试使用http-remoting-jmx
协议(在jconsole的类路径中使用jboss-cli-client.jar
)使用如下链接连接到jmx端点:
service:jmx:http-remoting-jmx://<host>:<port>
如https://dzone.com/articles/remote-jmx-access-wildfly-or中所述。 这也行不通。
我已在spring.jmx
文件中指定了所有application.properties
属性,如下所示:
# JMX config
spring.jmx.default-domain=host
spring.jmx.enabled=true
spring.jmx.server=mbeanServer
在本地运行jconsole或visualvm工作,我可以看到我关心的所有已注册的JMX Mbeans。
所以,我的猜测是我遗漏了有关远程JMX配置的内容,但它是什么? 请记住,我用于JMX访问的端口是可用的,因为我有另一个应用程序(使用spring boot部署在tomcat上),可以进行远程JMX连接。
提前感谢任何提示。