使用 Hawtio 访问嵌入式 ActiveMQ Artemis
Accessing Embedded ActiveMQ Artemis with Hawtio
我有 Spring 引导应用程序,其中包含嵌入式 ActiveMQ Artemis 和 Camel。这使用以下 ActiveMQ 依赖项:
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>artemis-server</artifactId>
<version>2.18.0</version>
</dependency>
我也使用 Jolokia 作为依赖项。当使用远程 Hawtio 实例连接到应用程序时,Camel 插件被启用,我还可以通过 JMX 插件看到 Camel 和 ActiveMQ Artemis。但是,ActiveMQ 插件未启用(尽管它包含在默认的 Hawtio 安装中)。
如何让 Hawtio 识别 ActiveMQ,从而启用 Hawtio ActiveMQ 插件?
Hawtio 附带的 ActiveMQ 插件适用于 ActiveMQ“经典”代理,而不是 ActiveMQ Artemis。因此,它不会检测 ActiveMQ Artemis 的嵌入式实例。
ActiveMQ Artemis本身有一个Hawtio plugin由三部分组成:
- artemis-console(重命名为
console.war
)
- artemis-plugin(重命名为
artemis-plugin.war
)
- activemq-branding(重命名为
activemq-branding.war
)
您可以下载这些 war 文件并将它们部署到您的 Web 应用程序服务器中(假设您有一个)。我已经在 Wildfly 24 上完成了这项工作,一旦我放松了远程 ActiveMQ Artemis 实例的安全性(允许“来宾”用户并在 jolokia-access.xml
中禁用 CORS),它就可以正常工作。当然,在生产中你会想要解决安全问题,但这应该会让你朝着正确的方向前进。
根据 Justin Bertram 的建议,我执行了以下操作:
下载Wildfly
-
将它们解压并将Artemis的web目录(即/apache-artemis-2.18.0/web)复制到Wildfly的部署目录(即/wildfly-24.0.1.Final/standalone/deployments)
启动 Wildfly 并连接到远程 ActiveMQ Artemis Broker 的 Jolokia 端点。
我有 Spring 引导应用程序,其中包含嵌入式 ActiveMQ Artemis 和 Camel。这使用以下 ActiveMQ 依赖项:
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>artemis-server</artifactId>
<version>2.18.0</version>
</dependency>
我也使用 Jolokia 作为依赖项。当使用远程 Hawtio 实例连接到应用程序时,Camel 插件被启用,我还可以通过 JMX 插件看到 Camel 和 ActiveMQ Artemis。但是,ActiveMQ 插件未启用(尽管它包含在默认的 Hawtio 安装中)。
如何让 Hawtio 识别 ActiveMQ,从而启用 Hawtio ActiveMQ 插件?
Hawtio 附带的 ActiveMQ 插件适用于 ActiveMQ“经典”代理,而不是 ActiveMQ Artemis。因此,它不会检测 ActiveMQ Artemis 的嵌入式实例。
ActiveMQ Artemis本身有一个Hawtio plugin由三部分组成:
- artemis-console(重命名为
console.war
) - artemis-plugin(重命名为
artemis-plugin.war
) - activemq-branding(重命名为
activemq-branding.war
)
您可以下载这些 war 文件并将它们部署到您的 Web 应用程序服务器中(假设您有一个)。我已经在 Wildfly 24 上完成了这项工作,一旦我放松了远程 ActiveMQ Artemis 实例的安全性(允许“来宾”用户并在 jolokia-access.xml
中禁用 CORS),它就可以正常工作。当然,在生产中你会想要解决安全问题,但这应该会让你朝着正确的方向前进。
根据 Justin Bertram 的建议,我执行了以下操作:
下载Wildfly
将它们解压并将Artemis的web目录(即/apache-artemis-2.18.0/web)复制到Wildfly的部署目录(即/wildfly-24.0.1.Final/standalone/deployments)
启动 Wildfly 并连接到远程 ActiveMQ Artemis Broker 的 Jolokia 端点。