Skip to main content

Munin plugins for Varnish.

Project description


A buildout recipe that packages and configures the munin tool varnish_ to enable monitoring of Varnish.

Contains a modified version of varnish_ r4439 created by Kristian Lyngstol which works with Varnish 2.0 or newer.

How to use it

You can use it with a part like this:

parts =

recipe = munin-varnish
varnishstat = ${varnish-build:location}/bin/varnishstat

Where varnish-build would be a typical cmmi part that builds Varnish. And the varnishstat option is the full path to the varnishstat binary.

This part will create a script in the buildout bin directory called munin-varnish which is used to monitor all the different aspects. The current list of aspects available for monitoring is (bin/munin-varnish suggest):


Each of these need to be installed as symlinks into the munin-node plugins. For example:

cd /etc/munin/plugins
ln -s /path/to/buildout/bin/munin-varnish varnish_expunge

Monitoring multiple instances

You can use the optional parameter name to add a name to the graph titles:

recipe = munin-varnish
varnishstat = ${varnish-build:location}/bin/varnishstat
name = Project X

In the above Example calling graph_title Object expunging would become graph_title Object expunging - Project X.

To monitor multiple instances you need to be able to put different symlinks into your etc/munin/plugins/ directory. You can use double underscore in the symlink installation to separate the instance name from the aspect. The above installation example would become:

cd /etc/munin/plugins
ln -s /path/to/buildout/bin/munin-varnish varnish_projectX__expunge

(ATTENTION: note the double underscore!).

We are using a slightly modified version of varnish_ to support multiple instances. See this post on varnish-dev for more information.


  • A build of varnishstat requires the developer’s libraries for ncurses. If you don’t have a varnishstat in your build of Varnish then most likely you need to install the ncurses-devel or libncurses5-dev package and then get buildout to rebuild Varnish.
  • The hit_rate aspect only works correctly with a munin server running version 1.4.0 alpha or better. However hit rate data is also available in request_rate where it is presented as raw rates rather than normalized as a percentage.


Michael Dunstan, Author

Harald Friessnegger, added support for multiple instances


1.0a3 (2010-08-16)

  • update to newest revision (r4439) of varnish_ [fRiSi]
  • add support for monitoring multiple varnish instances on a single host [fRiSi]

1.0a2 (2009-11-26)

  • Ensure that the generated script is executable.

1.0a1 (2009-11-26)

  • Initial release.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for munin.varnish, version 1.0a3
Filename, size File type Python version Upload date Hashes
Filename, size munin.varnish-1.0a3-py2.6.egg (11.6 kB) File type Egg Python version 2.6 Upload date Hashes View
Filename, size (17.6 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page