Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
SimpleRRD provides a simple Ruby interface for creating graphs with RRD
Ruby
Branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
examples Convert tabs to 2 spaces.
lib
spec
.document
.gitignore
Gemfile
Gemfile.lock
LICENSE
README.markdown
Rakefile
VERSION
simplerrd.gemspec

README.markdown

simplerrd

SimpleRRD is intended to be a simple way to create pretty, usable graphs with RRDTool in Ruby. It has a simple DSL that provides a simple interface to some predefined graph styles, and also models RRDTool's command syntax with Ruby objects for those who want more control.

Synopsis:

require 'simplerrd'
include SimpleRRD

graph = FancyGraph.build do
  title   "Fancy line graph"

  width    640
  height   240
  end_at   Time.at(1252107236)
  start_at Time.at(1252107236) - (60*60*60*6)

  buffers = data('data/mem/buffers.rrd') # ds_name and cf implied
  free    = data('data/mem/free.rrd')
  cache   = data('data/mem/cache.rrd')

  plot buffers, "Used buffers" # pick color by default, set opacity to 50-80%
  plot free,    "Free space  "
  plot cache,   "Cache used  "
end

graph.generate('fancy_lines.png')

Will produce:

fancy_lines.png

and

graph = FancyGraph.build do
  title   "Fancy stacked graph"

  width    640
  height   240
  end_at   Time.at(1252107236)
  start_at Time.at(1252107236) - (60*60*60*6)

  buffers = data('data/mem/buffers.rrd') # ds_name and cf implied
  free    = data('data/mem/free.rrd')
  cache   = data('data/mem/cache.rrd')

  stack_plot([buffers, "Used buffers"], 
             [free,    "Free space  "],
             [cache,   "Cache used  "])
end

graph.generate('fancy_stack.png')

fancy_stacked.png

A real-world example: complicated_ping.png

More information

For more examples, see the examples/ directory. The create_rrds.rb script will create the RRD data files that the examples use.

Unfortunately, beyond the examples, there's not a lot of documetation yet. The code and specs should be pretty readable, though.

Patches and such are welcome.

Copyright

Copyright (c) 2009 Sam Quigley. See LICENSE for details.

Something went wrong with that request. Please try again.