[collectd] Native output plugin for Graphite

Gregory Szorc gregory.szorc at gmail.com
Sat Oct 29 02:05:09 CEST 2011


I agree that deriving before input feels contrary to the "Graphite way"
since functions are available to perform these actions. However, I put
simple value differentiation in the initial release because I feel it would
be a significant usability win: you could just click around in the Graphite
UX and see graphs of the proper shapes, not a constantly growing "hill,"
without taking any additional action to apply a function.

Just yesterday I merged contributed code to add yet another differentiation
feature, one that writes the time derivative between the difference. A
number of people were bothered that Graphite was displaying values off by a
factor of the Collectd collection interval (10[s] by default). Practically
stated, CPU values were normalized at 1000 instead of 100, etc. Again, this
is something that could be corrected by applying a scale on the data in
Graphite. But, people /really/ wanted the feature.

Both differentiation features can be toggled by plugin options and are off
by default. So, users have a choice and everyone is happy, assuming they
have Python installed ;)


On Fri, Oct 28, 2011 at 9:10 AM, Scott Sanders <jssanders at gmail.com> wrote:

> On Fri, Oct 28, 2011 at 1:57 AM, Gregory Szorc <gregory.szorc at gmail.com>wrote:
>> Cool! You may be interested in my similar Python plugin. Mine initially
>> had a very similar feature set as yours, but GitHub pull requests have
>> slowly trickled in with new features, including deriving values. Feel free
>> to reference/copy the ideas! https://github.com/indygreg/collectd-carbon
> Thanks, Greg! I started with your plugin and moved to a compiled solution
> because python wasn't available on some of the hosts I am monitoring. Your
> work was a big help to me and a great source of inspiration.
> I'm curious why you added the ability to send derived values to carbon.
> That feels contrary to the "Graphite way" of doing things, since
> derivative() and nonNegativeDerivative() provide the same functionality.
> -Scott
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.verplant.org/pipermail/collectd/attachments/20111028/891f6524/attachment.html>

More information about the collectd mailing list