skip to navigation
skip to content

munin.varnish 1.0a3

Munin plugins for Varnish.

Downloads ↓

Introduction

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:

[buildout]
parts =
  ...
  munin-varnish

[munin-varnish]
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):

expunge
transfer_rates
objects
uptime
request_rate
memory_usage
hit_rate
threads
backend_traffic

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:

[munin-varnish]
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.

Notes

  • 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.

Credits

Michael Dunstan, Author

Harald Friessnegger, added support for multiple instances

Changelog

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.
 
File Type Py Version Uploaded on Size # downloads
munin.varnish-1.0a3-py2.6.egg (md5) Python Egg 2.6 2010-08-16 11KB 588
munin.varnish-1.0a3.zip (md5) Source 2010-08-16 17KB 506