From c0bc3b8510c95f9a0047b22070d354abf7da20b6 Mon Sep 17 00:00:00 2001 From: oetiker Date: Thu, 28 Sep 2006 12:38:34 +0000 Subject: [PATCH] fixed doc regarding site install git-svn-id: svn://svn.oetiker.ch/rrdtool/branches/1.2/program@902 a5681a0c-68f1-0310-ab6d-d61299d08faa --- doc/rrdruby.pod | 82 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 doc/rrdruby.pod diff --git a/doc/rrdruby.pod b/doc/rrdruby.pod new file mode 100644 index 0000000..f2aced8 --- /dev/null +++ b/doc/rrdruby.pod @@ -0,0 +1,82 @@ +=head1 NAME + +rrdruby - About the RRD Ruby bindings + +=head1 SYNOPSIS + + require "RRD" + RRD.create( + rrd, + "--start", "#{start - 1}", + "--step", "300", + "DS:a:GAUGE:600:U:U", + "DS:b:GAUGE:600:U:U", + "RRA:AVERAGE:0.5:1:300") + +=head1 DESCRIPTION + +The B functions are directly callable via the Ruby programming +language. This wrapper implementation has been written from the scratch +(without SWIG) + +The API's simply expects string parameters to the functions. Please refer +to the other B documentation for functions and valid arguments. + +=head1 EXAMPLE + + $: << '/path/to/rrdtool/lib/ruby/1.8/i386-linux' + require "RRD" + RRD.create( + rrd, + "--start", "#{start - 1}", + "--step", "300", + "DS:a:GAUGE:600:U:U", + "DS:b:GAUGE:600:U:U", + "RRA:AVERAGE:0.5:1:300") + puts + + puts "updating #{rrd}" + start.to_i.step(start.to_i + 300 * 300, 300) { |i| + RRD.update(rrd, "#{i}:#{rand(100)}:#{Math.sin(i / 800) * 50 + 50}") + } + puts + + puts "fetching data from #{rrd}" + (fstart, fend, data) = RRD.fetch(rrd, "--start", start.to_s, "--end", + (start + 300 * 300).to_s, "AVERAGE") + puts "got #{data.length} data points from #{fstart} to #{fend}" + puts + + puts "generating graph #{name}.png" + RRD.graph( + "#{name}.png", + "--title", " RubyRRD Demo", + "--start", "#{start+3600}", + "--end", "start + 1000 min", + "--interlace", + "--imgformat", "PNG", + "--width=450", + "DEF:a=#{rrd}:a:AVERAGE", + "DEF:b=#{rrd}:b:AVERAGE", + "CDEF:line=TIME,2400,%,300,LT,a,UNKN,IF", + "AREA:b#00b6e4:beta", + "AREA:line#0022e9:alpha", + "LINE3:line#ff0000") + puts + +If you use the B<--ruby-site-install> configure option you can drop the $: +line since the rrdtool module will be found automatically. + +If rrdtool runs into trouble, it will throw an exception which you might +want to catch. + +=head1 SEE ALSO + +rrdcreate, rrdupdate, rrdgraph, rrddump, rrdfetch, rrdtune, rrdlast, +rrdxport, rrdinfo + +=head1 AUTHOR + +Loïs Lherbier Elois.lherbier@covadis.chE + +Miles Egan Emiles@caddr.comE -- 2.30.2