GithubHelp home page GithubHelp logo

dashboard's Introduction

Etsy Dashboards
----------------------

This code is an example of how we build monitoring dashboards at Etsy. These dashboards are bare bones collections of metrics from various graphing tools, specifically Graphite, Ganglia, and Cacti. It's not important for these to be pretty (though a bit of CSS won't hurt!). The important thing is to collect complementary graphs in a single view so you can see correlations between different parts of your architecture.

Why?

 - Put related metrics from different tools on a single page.
 - Select time period to view (1 hour, 4 hours, 12 hours, 1 day, 1 week, etc.)
 - Periodically refresh each graph, so you can use on a wall-mounted monitor.

We use this day in and day out. Over 30 contributors have build more than 50 feature-specific dashboards within Etsy's engineering team. For more details about how we collect and use metrics at Etsy, start with these slides: http://www.slideshare.net/mikebrittain/metricsdriven-engineering

Hack on these to fit your own needs.


Getting Started
----------------------

Only a few steps are required to get started, assuming you are already collecting metrics in Graphite, Ganglia, and/or Cacti:

1. Grab this code and put it on a web server. Point the document root at the htdocs folder.

2. Update the base URL settings in lib/Config.php. If you are collecting deploy lines in Graphite, you can set these names in the config file as well (otherwise, just remove those array entries).

3. The htdocs/example.php script serves as a good place to start for building out a dashboard of your own, and includes samples of how to use each of the Graphite, Ganglia, and Cacti classes.


Legal
----------------------

This code is released under the MIT license.

The dashboard code requires a copy of jQuery. The example.php sample code links to Google's hosted version of jQuery, which is governed by the terms outlined on their web site: http://code.google.com/apis/libraries/terms.html


Questions?
----------------------

Contact me on GitHub, or directly by email: [email protected]

dashboard's People

Contributors

mikebrittain avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.