A munin plugin to monitor a rabbitmq queue
Python
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
shots
.gitignore
MANIFEST.in
README.rst
rabbitmq_munin.py
setup.py

README.rst

RabbitMQ Munin Plugin

A simple plugin for munin to monitor the number of messages in a queue.

By default monitors the celery queue for the user 'guest'

Features

This plugin monitor the following stats:

  • Queue Size (depth), number of messages in the queue.
  • Published Messages, number of messages that have been pushed into the queue,
  • Published Messages Rate, number of messages per seconds pushed into the queue.
  • Channels, number of channels open.
  • Connections, number of connections.
  • Consumers, number of consumers.
  • Exchanges, number of exchanges.
  • Queues, number of queues.

shots/rabbitmq_munin-day.png

shots/rabbitmq_munin_pubmsgs-day.png

Installation

The easiest way to install the code is to use pip.

Install the newest version from PyPI.:

pip install rabbitmq-munin

Install the latest development version:

pip install git+https://github.com/freyes/rabbitmq_munin.git#egg=rabbitmq-munin

The other option is to download and uncompress the code manually and execute the included setup.py script for installation:

./setup.py install

To make the plugin available to the munin-node you can run the following commands:

ln -s $(which rabbitmq_munin) /etc/munin/plugins/
ln -s $(which rabbitmq_munin_pubmsgs) /etc/munin/plugins/

Once munin can run the plugin, you can configure it as any other munin plugin (in /etc/munin/plugin-conf.d/munin-node) and the config will look like this:

[rabbitmq_munin*]
env.username guest
env.password guest
env.server localhost:15672
env.vhost /
env.queue celery

The config above is using the default values of the plugin, your environment may require different values.

Dependencies

Python packages:

Rabbitmq plugins:

  • Management Plugin, you can install it with the following command:

    rabbitmq-plugins enable rabbitmq_management