[rrd-developers] librrd

Matt Massie massie at cs.berkeley.edu
Wed Apr 20 20:35:41 MEST 2005

tobi et al-
i talked a couple weeks ago about how we might change the heart of 
rrdtool to make it more portable and developer friendly.  i think i have 
a basic code base to get us started toward that goal.  you can download 
the code and try is yourself at


i've compiled and tested the code on Linux, Solaris, MacOS X, FreeBSD, 
NetBSD and Windows/Cygwin.  MacOS users will have to add the line...

extern "C" int isnan(double);

to the top of some of the source (i'll add the autoconf code to do that 
later).  there is a bug on macosx that occurs when iostream and cmath 
are used together (as librrd does).


the ./src directory has all the code for building the rrd library and 
./test has a simple program for testing it.

the test program creates a database with two datasources and two 
archives, dumps in 62,000+ random samples and then serializes the 
database into a human-readable text (this test only takes about a second 
on my laptop.. very fast).

the human-readable text format is not the format i recommend for storing 
the databases .. .it's just there for debugging.  adding the xdr code 
would be pretty trivial.

i haven't implemented the fetch code yet but it would not take long at all.

it would be pretty easy to wrap this code using SWIG 
(http://www.swig.org/) to provide Perl, Python, Tcl/Tk, Guile,
MzScheme, Ruby, Java, PHP, CHICKEN, Lisp, etc interfaces to librrd.

i would be happy to continue working on this on the side as much as i 
can but things are getting pretty busy now for me.  please let me know 
what you think about this code/approach.

btw, i want to give credit where credit is due.. this code is based 
pretty closely to jrobin (http://www.jrobin.org/).

you'll see a "librrd-C-0.1.0.tar.gz" file on my web site which was my 
first failed approach to solving this problem.  i quickly realized the C 
wasn't going to cut it and i needed C++ (i'm not trying to start any 
religious wars here).

let me know what you think.


PGP fingerprint 'A7C2 3C2F 8445 AD3C 135E F40B 242A 5984 ACBC 91D3'

    They that can give up essential liberty to obtain a little
       temporary safety deserve neither liberty nor safety.
   --Benjamin Franklin, Historical Review of Pennsylvania, 1759

-- Attached file removed by Ecartis and put at URL below --
-- Type: application/pgp-signature
-- Desc: OpenPGP digital signature
-- Size: 257 bytes
-- URL : http://lists.ee.ethz.ch/p/4266A10918194-signature.asc

Unsubscribe mailto:rrd-developers-request at list.ee.ethz.ch?subject=unsubscribe
Help        mailto:rrd-developers-request at list.ee.ethz.ch?subject=help
Archive     http://lists.ee.ethz.ch/rrd-developers
WebAdmin    http://lists.ee.ethz.ch/lsg2.cgi

More information about the rrd-developers mailing list