[collectd] Processes plugin
Florian Forster
octo at verplant.org
Thu Jan 14 19:27:38 CET 2010
Hi Mark,
On Thu, Jan 14, 2010 at 10:41:10AM +0100, Florian Forster wrote:
> Yeah, sounds like an unsigned 32bit integer being cast to a signed one.
turns out the data was first stored in a long (32bit / 64bit, depending
on architecture), then a counter_t (unsigned 64bit) then cast to a
derive_t (signed 64bit).
I've changed this to use `derive_t' thorough the entire plugin. Not sure
if this fixes the problem's core, though: It seems like you're
missing all negative "counter" values. [*]
After taking a good look at the RRDtool sources it turns out that there
have been a number of incarnations of this bug over the year. The
symptoms change over the time, and one of those is that values with
leading hyphens are dismissed as incorrect. I've sent a patch fixing all
the problems I could think of to the RRDtool mailing list and it's been
applied already. [0]
Regards,
-octo
[*] Though you'll need to write 2^63-1 bytes (roughly 9.2 Exabytes) for
this, assuming Linux provides 64bit counters.
[0] <http://oss.oetiker.ch/rrdtool-trac/changeset/2001/trunk/program/src>
--
Florian octo Forster
Hacker in training
GnuPG: 0x91523C3D
http://verplant.org/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://mailman.verplant.org/pipermail/collectd/attachments/20100114/dc234b0a/attachment.pgp
More information about the collectd
mailing list