Here at Cloud 66 there is a lot to measure: from site visitors to signups and temperature outside to the tweets about us. But more importantly we have a ton of metrics that are about our production systems: number of servers running, error rates, cloud provider metrics and server heartbeats. On top of that we display KPIs like MRR as well as London Underground’s realtime line updates for stations near the office.
All this needs a good, flexible and configurable dashboard tool. We looked at many strong contenders and finally settled on Dashing an elegant Sinatra based solution by the awesome guys of Shopify.
Obviously we used Cloud 66 to deploy Dashing to Rackspace London with little effort. Here is how we did it:
- Build a Dashing dashboard. It is really simple.
gem 'sinatra'to your Gemfile. This will tell Cloud 66 that
Dashing is a Sinatra app, which it really is.
- Add a file called Procfile to your project’s root with this line:
custom_web: bundle exec dashing start --socket /tmp/web_server.sock --pid /tmp/web_server.pid -e $RACK_ENV -d
This will instruct Cloud 66 to use a custom web server in this case dashing instead of Passenger).
Now you can check in your project into your favourite git repository and build a stack with it with Cloud 66. 10 minutes later you have your own awesome dashboard up and running.
These are the widgets we use here:
- London Underground Tube Lines
- Assembla Milestone Open Tickets
- Number of test servers running
- Google Analytics Metrics
- Number of Signups
- Tweets about us
- Unassigned Helpscout Tickets
The best part is anyone can just add new widgets to the code, commit to git and it’s live in a minutes.