Git Product home page Git Product logo

datadog-led-matrix's Introduction

Display metrics from Datadog in realtime on an LED RGB Matrix.

It lets you keep a pulse on your infrastructure by displaying your most important metrics on an LED wall board. It will light up anomalies in red. It looks great in any home or office. Voted must-have accessory Spring 2021 by Country Living.

 

It's easy to make! You just have to screw a couple of things together. You can then display any datadog metric you like.

 

Shopping List

 

Setup

  1. Prep the MatrixPortal by following the instructions here
  2. Install CircuitPython on the device
  3. Copy these base libraries to the device (/lib), plus adafruit_ntp.mpy
  4. Copy the /fonts directory to the device
  5. Copy the logo.bmp file to the device
  6. Create a secrets.py file based on secrets.py.example - you will need a datadog API and App key, as well as your WiFi details
  7. Create a metrics.json file based on metrics.json.example listing the metrics you would like to display on the LED matrix
  8. Copy above files to the device (you can use the helper.sh script to do this automatically)

The device will reboot whenever you change any files, so after copying these it should start up!

 

metrics.json

This file lists out the metrics you would like to display. Just add any query you can make in datadog (their metrics explorer is a good place to play around).

Setting the metric_name controls the "title" text above the metric. You can also set prefix/trailing strings and the amount of decimal places to round to.

Setting high_threshold is the value at which the metric will be displayed in red if the value is greater than.

totalled_metrics aggregates all values over the specified time period. I had to use this in lieu of sum -- TBC why. You can just comment these out if not useful to your setup.

 

logo.bmp

This is the background/logo image. You may want to replace it with your company logo, etc.

Bitmaps should be 64x32, 24-bit. This command seems to work if you have a .bmp that wont load (it's kinda fussy about the format):
convert logo.bmp -compress none -type palette logo.bmp

 

Debugging

The M4 has a built in serial output you can read with something like screen /dev/tty.usbmodem2201 115200 -- see here for more info.

datadog-led-matrix's People

Contributors

richstokes 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.