munincollector-ng

Published Monday, August 16, 2010 (300 words, 2 minutes to read).

Munincollector-ng is a perl script that collects graphs from multiple munin installations to display them in one page. A scenario where this is helpful is when you have (too) many munin clients on (too) many munin masters, and you want to look through some of the graphs - i.e. the Disk usage in percent (aka df) plugin - without spending/wasting too much time browsing through the less important graphs.

Munincollector

It consists of one perl script and one configuration file. It is being executed regularly by cron. At each run, it iterates through the configuration file; downloads the graphs to a local directory and generates an html file.

Below is some example configuration that will gather the week and month graphs from the df plugin from four separate munin masters (three without authentication and one with authentication). The graphs will be downloaded to /var/www/munincollector-ng/:

# General configuration
graph.plugin df
graph.type week month
graph.log /var/log/munincollector-ng.log
graph.dir /var/www/munincollector-ng

# Configuration per munin master you want to collect graphs from.
# The format is: <id>.<option> <value>

# Three munin installations with no authentication
uio.url http://munin.ping.uio.no
foo.url http://foo.com/munin/
bar.url http://bar.com/munin/

# One munin master that requires authentication
baz.url http://baz.com/munin/
baz.realm Munin
baz.username user1
baz.password pass1
baz.netloc baz.com:80

An example cron job that will execute the script once per day (make sure user have write permissions in /var/www/munincollector-ng/):

8 8 * * * user /usr/local/bin/munincollector-ng -c /etc/munincollector-ng/example.conf

The script is available from Github.

PS: Put the logo.png and style.css from your /etc/munin/templates/ directory into /var/www/munincollector-ng/ to make it look a bit nicer.