Apache ActiveMQ-检索JMS指标

问题描述

在我的公司项目中,我正在使用Spring Boot和Apache ActiveMQ 5.x Spring Boot启动程序。我完全是一个初学者。

我的目标是使用一些JMS队列指标公开Prometheus端点:

什么是用于检索此类指标的专用工具?到目前为止,我发现了两种可能的方法。谁能确认这两个工具中的哪一个可以解决我的问题?

解决方法

我认为Spring的东西不起作用,因为它将从应用程序本身(而不是ActiveMQ代理)提供与Spring相关的指标。

此外,您引用的ActiveMQ文档也适用于ActiveMQ Artemis。但是,您使用的依赖项是针对ActiveMQ 5.x的。因此,该文档不适用。但是,如果您选择使用ActiveMQ Artemis,则使用此Prometheus metrics plugin implementation公开Prometheus端点非常简单。值得注意的是,Artemis是ActiveMQ的下一代消息代理。如果您要开始一个新项目,建议您使用它而不是5.x。 Artemis计划在将来替换5.x并成为ActiveMQ 6.0。

我认为您最好的选择是配置Prometheus JMX exporter。对于ActiveMQ 5.x,它甚至有一个sample configuration

,

ActiveMQ随附Jolokia bundled by default,用于使用HTTP为JVM提取JMX Bean,队列和其他一系列指标。这样,我们可以使用Telegrafsimple input plugin for ActiveMQ附带的simple output plugin for Prometheus之类的软件轻松导出。