[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

http://www.cs.berkeley.edu/~massie/librrd/

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).

anyway.

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.

-matt

-- 
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