Code Monkey home page Code Monkey logo

sites-monitor's Introduction

Sites monitor

This is a site-status dashboard that my team projects on one wall of our office. It uses React to visualize data from Jenkins and from our Barracuda load balancer. It provides cheerful reassurance that all our sites are still up; if one of them goes down, it lets us know which site has gone down and which servers are responsible. It's designed to monitor a large number of sites with no interaction -- when something goes wrong it will tell you where to look without a single keypress or mouse click.

Demo

Legend

Legend

Data is fetched from the loadBalancerUrl and the jenkinsUrl (on lines 10-11 of src/App.jsx) every 30 seconds. After the first 30-second cycle, the legend will be hidden to make more room for the Jenkins log.

Data has been cached for this public demo, and the names of our servers have been redacted.

Usage

Run npm start to start the development server. npm run build will build it for production.

Use your browser's zoom function (Ctrl/Cmd + scrollwheel) to adjust things to fit on your display.

Important files in /src

  • App.jsx: All the networking and data-processing logic, and the app's overall layout.
  • App.scss: Stylesheet
  • System.jsx: React component visualizing a System, which is a service (site) and the servers that keep it live. Systems may also show a diamond that represents the most recent Jenkins build (defined in Diamond.jsx). Systems are organized into Groups defined by the load balancer.
  • JenkinsLog.jsx: Displays recent builds from Jenkins. The number of recent builds is determined by const numJenkinsBuildsToShow in App.jsx.

sites-monitor's People

Contributors

dawnpaladin avatar

Watchers

James Cloos 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.