RabbitMQ Prometheus Exporter

655 views
Skip to first unread message

uttam anand

unread,
May 8, 2018, 3:12:17 PM5/8/18
to rabbitmq-users
Hi Guys,

Currently I have a running cluster of RabbitMQ 3.5.4 . I want to monitor RabbitMQ using Prometheus.

But, there is no Prometheus RabbitMQ Exporter for 3.5.4 version of RabbitMQ.


I find upgrading from 3.5.4 to 3.7.4 is only the solution to this. 
If suppose I upgrade RabbitMQ to 3.7.4, how can I run the Prometheus rabbitmq exporter in non container environment?
Just placing the prometheus_rabbitmq_exporter-v3.7.2.1.ez in the rabbitmq/plugin folder and enabling it through /etc/rabbitmq/rabbitmq.config ??

Any thoughts?

Thanks
Uttam Anand


Michael Klishin

unread,
May 8, 2018, 4:11:48 PM5/8/18
to rabbitm...@googlegroups.com
Plugins are enabled using rabbitmq-plugins, a CLI tool [1].
The plugin must be placed into the plugins directory.


--
You received this message because you are subscribed to the Google Groups "rabbitmq-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-users+unsubscribe@googlegroups.com.
To post to this group, send email to rabbitmq-users@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
MK

Staff Software Engineer, Pivotal/RabbitMQ

Kevin Freeman

unread,
May 8, 2018, 7:38:57 PM5/8/18
to rabbitmq-users
Make sure to copy (and enable) all the plugin files for rabbitmq 3.7.x, not just the one you listed below.  On Windows, at least, I had to explicitly enable the dependencies for the metrics endpoint to respond.

Note for Windows users: don't copy or install the process collector plugin.

Kevin

ryan suxena

unread,
May 9, 2018, 10:18:54 AM5/9/18
to rabbitm...@googlegroups.com
I am trying to enable the plugin using the enabled_plugin file in the screenshot below. I don't want to use the CLI for enabling it as I do not want it to be a manual process for installation of RabbitMQ.



Any thoughts?

On Tue, May 8, 2018 at 3:11 PM, Michael Klishin <mkli...@pivotal.io> wrote:
Plugins are enabled using rabbitmq-plugins, a CLI tool [1].
The plugin must be placed into the plugins directory.

On Tue, May 8, 2018 at 2:12 PM, uttam anand <ryans...@gmail.com> wrote:
Hi Guys,

Currently I have a running cluster of RabbitMQ 3.5.4 . I want to monitor RabbitMQ using Prometheus.

But, there is no Prometheus RabbitMQ Exporter for 3.5.4 version of RabbitMQ.


I find upgrading from 3.5.4 to 3.7.4 is only the solution to this. 
If suppose I upgrade RabbitMQ to 3.7.4, how can I run the Prometheus rabbitmq exporter in non container environment?
Just placing the prometheus_rabbitmq_exporter-v3.7.2.1.ez in the rabbitmq/plugin folder and enabling it through /etc/rabbitmq/rabbitmq.config ??

Any thoughts?

Thanks
Uttam Anand


--
You received this message because you are subscribed to the Google Groups "rabbitmq-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-users+unsubscribe@googlegroups.com.
To post to this group, send email to rabbitm...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.
--
MK

Staff Software Engineer, Pivotal/RabbitMQ

Michael Klishin

unread,
May 9, 2018, 10:40:39 AM5/9/18
to rabbitm...@googlegroups.com
This is the right way to "preconfigure" plugins.

enabled_plugins must contain a list of atoms (plugin names) ending with a dot (required by the runtime).

You have 4 lists of 1 element each.

ryan suxena

unread,
May 9, 2018, 12:13:16 PM5/9/18
to rabbitm...@googlegroups.com
Then I guess I am doing it a right way.
Thanks Michael for you kind guidance.

Michael Klishin

unread,
May 9, 2018, 12:34:55 PM5/9/18
to rabbitm...@googlegroups.com
The approach is the right one but file contents should be

[rabbitmq_management,prometheus_rabbitmq_exporter,prometheus_process_collector,prometheus_httpd].


uttam anand

unread,
May 9, 2018, 1:54:32 PM5/9/18
to rabbitm...@googlegroups.com
Oh ok. Thanks again. 

Sent from my iPhone

On May 9, 2018, at 11:34 AM, Michael Klishin <mkli...@pivotal.io> wrote:

The approach is the right one but file contents should be

[rabbitmq_management,prometheus_rabbitmq_exporter,prometheus_process_collector,prometheus_httpd].


On Wed, May 9, 2018 at 11:13 AM, ryan suxena <ryans...@gmail.com> wrote:
Then I guess I am doing it a right way.
Thanks Michael for you kind guidance.
On Wed, May 9, 2018 at 9:40 AM, Michael Klishin <mkli...@pivotal.io> wrote:
This is the right way to "preconfigure" plugins.

enabled_plugins must contain a list of atoms (plugin names) ending with a dot (required by the runtime).

You have 4 lists of 1 element each.
On Wed, May 9, 2018 at 9:18 AM, ryan suxena <ryans...@gmail.com> wrote:
I am trying to enable the plugin using the enabled_plugin file in the screenshot below. I don't want to use the CLI for enabling it as I do not want it to be a manual process for installation of RabbitMQ.

<image.png>

Any thoughts?
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-user...@googlegroups.com.

ryan suxena

unread,
May 9, 2018, 4:33:47 PM5/9/18
to rabbitm...@googlegroups.com
I am facing issue while starting rabbitmq. Attaching the screenshot.
The version of rabbitmq is 3.7.4 and erlang version is Erlang R14B04 (erts-5.8.5)




Michael Klishin

unread,
May 9, 2018, 9:01:34 PM5/9/18
to rabbitm...@googlegroups.com
RabbitMQ 3.7.x requires at least Erlang 19.3: http://www.rabbitmq.com/which-erlang.html.

The runtime tells you that it has a bytecode operation in one of the modules that it does not support.

ryan suxena

unread,
May 10, 2018, 3:52:57 PM5/10/18
to rabbitm...@googlegroups.com
Thanks Mike.

I am facing issue with the Prometheus plugin. I have put all the plugins i.e. .ez file in the plugins folder of rabbitmq and also enabled those plugins via enable_plugin files.
I am not sure what other dependencies it is asking for.




Thanks
Uttam

Michael Klishin

unread,
May 10, 2018, 8:57:34 PM5/10/18
to rabbitm...@googlegroups.com
It's missing a library called "accept" (I'm not sure what it does). You need to have all the dependencies
distributed with the plugin [1] in the plugins directory (but no need to explicitly enable them all since plugins indicate their dependencies).

Reply all
Reply to author
Forward
0 new messages