armon/statsite — pull request #17 by gvalkov (2013-02-05 13:12:39+00:00)
Title: A sink that serializes statsite data to json, yaml or ruby's marshal.

Just a sink that I though might be useful to someone else. It merges current and previous collections (while aggregating counters) and serializes them to a file. In my use case, the dumped data is consumed by Munin. I find that generating metrics with a statsd client, collecting them with statsite + this sink and charting them with munin works great.

This might be a bit too specific, so I wouldn't mind if you didn't merge it. Just putting it out there.

Example output file:

```json
{
"temperature": {
"kv": 34.0,
"ts": 1360068658,
"type": "kv"
},
"listeners": {
"sum": 163.0,
"ts": 1360068658,
"type": "counter",
"sumsqrt": 163.0,
"mean": 1.0,
"count": 163.0,
"stddev": 0.0,
"min": 1.0,
"max": 1.0
},
"login-time": {
"sum": 24216.0,
"ts": 1360068658,
"type": "timer",
"sumsqrt": 13935574.0,
"mean": 484.32,
"count": 50.0,
"stddev": 212.24172203275342,
"min": 132.0,
"max": 885.0,
"P50": 431.0,
"P95": 826.0,
"P99": 885.0
}
}
```