[collectd] collectd + YaketyStats

Mark Plaksin happy at usg.edu
Fri Jan 9 15:30:04 CET 2009


Hi:

I'm one of the authors of YaketyStats (yaketystats.org).  I'd like to
talk about two things:

1)  Help me see the value of MIN and AVERAGE RRD CFs :)  
2)  The possibility of using the YaketyStats UI (aka Jart) to view
collectd RRD files.

Regarding (1), in a discussion about tools to view collectd RRD files,
octo wrote this in a November note [1]:

> Then there's YaketyStats[1]. They have a nice frontend and I tried to
> use that with RRD files created by collectd, unfortunately it's not that
> easy: They require certain DS names and only use the MAX CF (a huge
> design-bug in my opinion, although apparently they did that on purpose).

Let me start by saying I'm happy to be wrong! :)  A long time ago I
decided that the MAX CF was sufficient for everything we needed (we're
sysadmins and have been using some form of YaketyStats internally for
years).  At the time I understood some theoretical reasons for using MIN
and AVERAGE but it never mattered in any practical case I happened to
come across.  I was also trying to make thing as simple as possible and
having only one CF made graphing easier.

The other day I came across a case there both AVERAGE and MIN would be
useful to have!  To help debug an apparent entropy problem I started
collecting entropy stats once a second.  Entropy is almost always fine
(around 4k) but sometimes it drops near 0.  With MAX as the only CF, the
only way to see the dips is to look at a small window of time.  Being
able to graph MIN would definitely help!

Do you think AVERAGE and MIN are useful in general or only in certain
specific situations?

Regarding (2), I don't think it would be too hard to adjust Jart and/or
collectd RRD files so Jart can be used with collectd data.  I've used a
slightly hacked version of Jart to view some collectd RRD files.  Sam
(the other YaketyStats guy) is Mr. Jart so he may tell me some of this
is crazy talk but I think it could work :)  The dynamic graph-creation in
Jart has been extremely useful to us so I figure it would be nice for
others too.

To use Jart with collectd there are just two or three issues that would
need to be resolved:

A)  The CF issue.  Right now Jart assumes all you've got is MAX.  Jart
would need to handle the others, possibly via a per-user and/or
per-graph preference.

B)  Jart assumes you have one DS per RRD file.  There's a
proof-of-concept implementation of handling more than one DS per file,
but it's not the prettiest.  Unless there are compelling reasons to keep
multiple DSes per file, it would be nice to break them up.

C)  DS names.  Jart assumes you have one DS named 'yabba' :)  Doesn't
seem too hard to have Jart look in the RRD file and grab the DS name.
Of course, it's more complex if there are multiple DSes per RRD.

Thanks for any feedback!  

Footnotes: 
[1]  http://mailman.verplant.org/pipermail/collectd/2008-November/002280.html



More information about the collectd mailing list