Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Measure your Rails app

Measure your Rails app

So you've done a web app, you tested it, deployed it, and your first customers begin to use your product and share it to their friends. That's great! Now, how do you know how are they using your application? Are you sure of the impacts of your deployments? What if you doubled the response time by fixing a bug and didn't see it?

In order to watch your application behavior, you need real-time metrics.

What are exactly real-time metrics? What can you use to store and watch them? What are exactly RRDtool, Graphite, StatsD? Can we improve existing solutions?

Jean-Daniel Guyot

April 12, 2012

More Decks by Jean-Daniel Guyot

Other Decks in Programming


  1. issues No way to insert data on an irregular basis

    No way to insert data in the past Insert one value at a time (I/O performance issue)
  2. App

  3. Statsd Ruby, JS, C++, whatever Counters, Timers Automatic simple statistics

    values computation (95% percentile, average, …)
  4. tip #1 Pay attention to values overwriting Several machines: add

    a namespace per machine mystat.machine1.my_counter To get all stats: mystat.*.counter
  5. tip #2 Use only 1 RabbitMQ for all the hosts

    (development machines/integration) hostname.app_name.mystat.machin e1.my_counter