Aggregate & graph high-volume sample data in real time
Pull request Compare This branch is 1 commit behind iamcal:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
clients
lib
web
.gitignore
README.md
rollup.js

README.md

rollup

A tool for aggregating sample data.

Rollup is great for aggregating & graphing high-volume sample data (like timings in a web app) where you need more than just an average. Rollup lets you easily track averages, low and high bounds and 85th percentile (or 95th, or whatever you like). For simple pass/fail data it can also display useful success rate data. This can be coupled with more complex timing data to get a rich view of your application's performance.

This tool is based on Flickr::StatsD which I wrote a long time ago. The main issue with StatsD was that it used a ton of CPU. This version does not. You can read all about StatsD and how it works here.

It's also far more pluggable. Take a look at how the RRDWriter is plugged into the Collector. Writing your own storage class is very simple.

Usage

Modify the config settings at the top of rollup.js, and then just node rollup.js.