camptocamp / puppet-collectd forked from DavidS/puppet-collectd-tmp

managing a statistics collection daemon

This URL has Read+Write access

mfournier (author)
Thu Jun 04 05:33:59 -0700 2009
commit  503b01fdc306a369a25951ad1dd633ec02afe0e6
tree    d941771f0a86da45c0d6c44ca5d48909154fbbfb
parent  07708c1571b8b8bc7e377470839e127a22ea9918
name age message
file LICENSE Sun Oct 05 23:00:18 -0700 2008 add final touches: bsd license and readme with ... [DavidS]
file README Sun Oct 05 23:00:18 -0700 2008 add final touches: bsd license and readme with ... [DavidS]
directory doc/ Fri Jul 11 05:20:03 -0700 2008 Add collectd_threshold to example.pp This stat... [DavidS]
directory files/ Fri Aug 01 04:34:14 -0700 2008 finalize "common" removal [DavidS]
directory manifests/ Loading commit data...
directory plugins/ Fri Aug 01 13:58:49 -0700 2008 remove order-dependance of values within a sing... [DavidS]
README
Thanks
======

Work on this module was made possible by funding from neoTactics, Inc.

                     http://neotactics.com/


Collectd
========

Collectd is a very lightweight system statistics gathering daemon. To quote
from http://collectd.org/ :

> [...] it's written in C for performance and portability, [...] It includes
> optimizations and features to handle hundreds of thousands of data sets. It
> comes with over 60 plugins [...]. It provides powerful networking features
> and is extensible in numerous ways. Last but not least: collectd is actively
> developed and supported and well documented.


The Module
==========

The collectd puppet module contains high-level defines to configure the most
important modules as well as native puppet types to manage the configuration
files as well as collectd's notification and threshold rules.

The mapping tries to use collectd's config file keywords as much as possible.
Therefore any know-how should carry over pretty straight forward.

You can find the module at http://git.black.co.at/?p=module-collectd


Please send any patches and comments to this list for discussion.


Caveats
=======

1. Due to the heterogeneous syntax of collectd's configuration files, I opted
to split the Key-Value-style configuration of the daemon itself and the
sections for the plugins into different native types. This in turn necessitates
to have each plugin configuration in a separate file. The default "collectd"
class in the module will setup the proper structures to automatically create
the default locations and include them into the daemon's configuration.


2. There are currently only a few plugins explicitly implemented. To implement
a new plugin configuration, one just needs to specify a mapping from puppet
resources' parameters to the actual configuration, which is really straight
forward using the provided infrastructure.