Graphite (or get the metrics right)

I would like to talk briefly about Graphite. Quite simply put the best graphing tool I have dealt with so far. It uses something similar to RRDtool but in a cleverer way, especially on writing data prior to the current date which i find very handy in some cases.

I should state that I have worked with many other metrics systems over the years (mrtg, cacti, collectd, munin). Some of them are also very cool checking out such as yaketystats which is also quite nice if you want some scalability on your systems.

Graphite allows you to scale to some quite insane operations/metrics per minute (I am feeding 100k+ a minute on it at the moment). I have also worked on a setup where we use varnish to cache the stuff making it slightly faster. Last but not least graphite’s engine called carbon has two components: carbon-cache.py which processes the data to the database system (whisper) and carbon-relay.py which allows you to feed filtered data metrics to a remote box for processing.

Stay tuned for some setup tricks over the next posts…