远程进程中列出的 ActiveMQ 代理 - 无法找到安装路径

ActiveMQ broker listed in remote process - not able to find installation path

我有一种由供应商开发的黑盒应用程序。当我使用此 URL 作为远程进程 localhost:35099 登录 JConsole 时,我可以看到所有主题和队列,但我没有看到 ActiveMQ 安装目录。

有什么方法可以验证代理的安装方式或确定它使用的是哪个 JVM?我还需要注意哪些其他事项才能弄清楚 ActiveMQ 的详细信息?

代理作为一个Java进程运行,所以你可以找到运行进程的基目录在哪里,然后寻找数据目录(有时数据被移动到不同的位置)。

对于java.home位置(即ActiveMQ的运行基目录)

java.lang:type=Runtime

看属性:

SystemProperties

它的类型是'javax.management.openmbean.TabularDataSupport。单击它...然后滚动列表直到找到 SystemProperty

java.home

代理应该有一个 JMX bean:

org.apache.activemq:type=Broker,brokerName=.. your broker name..

然后查找属性以查看数据存储位置:

DataDirectory /opt/activemq/../data