Graphs are awesome.

At work I provide all kinds of graphs to the front end/support teams and Graphite is rapidly becoming my tool of choice. In the past, I have relied heavily on RRD. However, the easy to use front end, scalability and ease of data injection into Graphite is unparalleled.

Since puppet is such a large part of my infrastructure, I want lots of graphs to glance over in the event I think there is a problem. Puppet outputs stats to syslog and instead of changing that I decided to pull syslog into Graphite.

My company has allowed me to make this code publicly available on our GitHub site, with a short explanation on how to make it work. It uses Ruby and EventMachine to handle all of the requests and has an example of some simple calculations that can be done to aggregate data.