You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am aware that as of 3.8.0, RabbitMQ ships a built-in rabbitmq_prometheus plugin.
We are however still running RabbitMQ 3.7.15 and using the 3.7.9.1 release of prometheus_rabbitmq_exporter which is currently configured as follows in our Kubernetes config map for a RabbitMQ cluster running as a stateful set with persistent volumes for storage.
We'd like to get better insight into queue performance per vhost. The RabbitMQ documentation is a bit unclear, and other searches have led here and here, though it's difficult to know what is supported.
Question
What prometheus_rabbitmq_exporter collector do we need to enable to export per-queue message publish rates and related metrics to gain these insights? Or do we need to expand the metrics listed in queue_messages_stat?
Thanks in advance for your assistance.
The text was updated successfully, but these errors were encountered:
For anyone interested, if you're using a monitoring setup such as Prometheus + Grafana, note that rabbitmq_queue_message_published_total is sufficient (or at least partially sufficient) to obtain some insight into queue performance per vhost.
Once you have the prometheus_rabbitmq_exporter setup and configured with RabbitMQ and your Prometheus config scraping (in our case) the Kubernetes pods running RabbitMQ, and Prometheus added as a data source in Grafana; you can try something along these lines in Grafana:
(1) Create a dashboard variable (what Grafana calls template variables)
Name: top_queues
Type: Query
Data source: prometheus
Refresh: On Time Range Change
Query:
Regex: .*queue="(.*?)".*
Multi-value: enabled
Include All Option: enabled
(2) Create a dashboard (or add a panel to an existing dashboard)
Use this query to power a graph or a table depending on your preference.
sum(rate(rabbitmq_queue_messages_published_total{queue=~"$top_queues"}[2m])) by (vhost, queue) * 7 / 8
Note that the * 7 / 8 helps refine the accuracy of your results (time series values) depending on your Prometheus scrape interval and other factors related to the number of samples you wish to include in your 2 minute ( [2m] ) query interval (i.e. this may need to be refined in your environment).
The visualization area in your Grafana graph/table will need some tuning as always. You might name this Grafana panel "Top 25 Queue Rates" or the like.
Greetings,
I am aware that as of 3.8.0, RabbitMQ ships a built-in
rabbitmq_prometheus
plugin.We are however still running RabbitMQ 3.7.15 and using the
3.7.9.1
release ofprometheus_rabbitmq_exporter
which is currently configured as follows in our Kubernetes config map for a RabbitMQ cluster running as a stateful set with persistent volumes for storage.Config
which exports the following metrics:
Current Metrics
prometheus_rabbitmq_overview_collector
prometheus_rabbitmq_queues_collector
queue_messages_stat
Goal
We'd like to get better insight into queue performance per
vhost
. The RabbitMQ documentation is a bit unclear, and other searches have led here and here, though it's difficult to know what is supported.Question
What
prometheus_rabbitmq_exporter
collector do we need to enable to export per-queue message publish rates and related metrics to gain these insights? Or do we need to expand the metrics listed inqueue_messages_stat
?Thanks in advance for your assistance.
The text was updated successfully, but these errors were encountered: