Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

So I've been playing around with graphite for the past few days and I can see the potential there and why it is so powerful.

My main question is why should I use statsd in front of it like esty and so many other people do? As of right now I don't see the big benefit of putting another stack in front of graphite.

I hope someone can clear it up

share|improve this question
Sorry - no answer - but thanks for the question! Previously spent a lot of time looking for something like Graphite and failed to find it :) – symcbean Aug 25 '11 at 16:24
up vote 7 down vote accepted

So I got into the IRC channel and got this

<jY> what are the benefits of putting statsd in front of graphite
 <vvuksan> data aggregation
 <vvuksan> say you wanted to find out how many registrations you have per time period
 <vvuksan> you can either keep track of it yourself
 <vvuksan> send to graphite every minute
 <vvuksan> or
 <vvuksan> any time there is a successful registration send a packet to statsd and let statsd deal with it
 <jY> ok.. so i  just keep incing the counter then to statsd?
 <vvuksan> no
 <vvuksan> you just send to statsd
 <vvuksan> statsd will increment it for you
 <jY> ok
 <vvuksan> you can do all this yourself
 <vvuksan> it's just more work
 <jY> could i also send stuff like load avg to statsd.. or should that go right to graphite?
 <vvuksan> that should go right to graphite
 <vvuksan> cause that is already a composite metric
 <vvuksan> not just a data point
 <jY> ok so it's really only app specific stuff 
 <jY> ok thanks.. clears up a lot
 <jY> statsd would be good to send logins to.. so i can see how many logins per minute i get in other words
 <vvuksan> yeah
 <vvuksan> or what's average response time of an external API
 <vvuksan> it will also do percentiles which is useful
 <vvuksan> you could even do how long it took to execute a particular important query
 <jY> great.. thanks that cleared up a lot

So my take away is send system stats like free memory/drive space/users logged in right to graphite and send app stats like if a user logged in to statsd and lets statsd do its magic to generate nice data for graphite to graph

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.