Statsd Documentation

The blog post (read it): http://codeascraft.etsy.com/2011/02/15/measure-anything-measure-everything/
The code: https://github.com/etsy/statsd/
README: https://github.com/etsy/statsd/blob/master/README.md

There are three parts of the monitoring / tracking package plus the client:

1. Statsd - Listens for UDP packets sent to stats.p2pu.org
2. Carbon - Stores data that Statsd recieved to disk
3. Graphite - Used to visualize data in a web browser
4. Client - Sends counters and timers to statsd server (there's a python library and a bunch of others available)

Two types of metrics:

1. Counter - Simple, count things. Increment one by one. Used to keep track of things like new users over time
2. Timer - Keep track of durations of times. Each record is a numberical value. Used to keep track of things like average page load time over time

New metrics can be created on the fly.
Each metric has a name like this "p2pu.user.sign_up"
The "." in the names are used for grouping metrics together, and are shown as folders in graphite.

In graphite, you can safely ignore the metrics that are outside of the p2pu namespace. They're from statsd wanting to track itself