{"id":15371378,"url":"https://github.com/codingjoe/heroku-log-lights","last_synced_at":"2025-07-14T20:41:50.786Z","repository":{"id":137999177,"uuid":"59909622","full_name":"codingjoe/heroku-log-lights","owner":"codingjoe","description":"Heroku Log Lights is a visualisation of Heroku router logs for an LED matrix.","archived":false,"fork":false,"pushed_at":"2020-05-22T14:57:37.000Z","size":24958,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-21T06:43:03.843Z","etag":null,"topics":["asyncio","dataviz","heroku","led","logs","python","router-logs","visualisation"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codingjoe.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-05-28T18:45:41.000Z","updated_at":"2020-10-26T15:22:03.000Z","dependencies_parsed_at":null,"dependency_job_id":"54f06207-3076-4355-b03f-dd021323c48c","html_url":"https://github.com/codingjoe/heroku-log-lights","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/codingjoe/heroku-log-lights","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codingjoe%2Fheroku-log-lights","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codingjoe%2Fheroku-log-lights/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codingjoe%2Fheroku-log-lights/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codingjoe%2Fheroku-log-lights/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codingjoe","download_url":"https://codeload.github.com/codingjoe/heroku-log-lights/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codingjoe%2Fheroku-log-lights/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265345225,"owners_count":23750571,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asyncio","dataviz","heroku","led","logs","python","router-logs","visualisation"],"created_at":"2024-10-01T13:46:38.820Z","updated_at":"2025-07-14T20:41:50.767Z","avatar_url":"https://github.com/codingjoe.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Heroku Log Lights\n\n_Heroku Log Lights is a visualisation of [Heroku][heroku] router logs for a LED matrix._\n\n![HLL Demo](demo.gif)\n\nThis little tool allows you to monitor all your applications router logs in real time.\nAll requests are displayed in a logarithmic scale. 2xx responses are green, 3xx are blue, 4xx yellow \u0026 5xx are red. The longer a request takes the more the color shifts to red. If a request hits the top, it ran for 30s and Heroku throws a H12 (request timeout).\n\nIt sounds simple but it provides you with incredible feedback about your applications health.\n\n## Manual\n\n![Read the manual](https://cdn.meme.am/cache/instances/folder246/57635246.jpg)\n\n**Everything is green:**\nThat's great, but you should think about cache control and ETags.\n(2xx response)\n\n**Everything is purple:**\nThat's the heroku way! But maybe your CDN isn't working.\n(3xx response)\n\n**Everything is yellow:**\nUpsy daisy, the latest version of your Android or Angular App is sending wrong requests to your backend...\n(4xx response)\n\n**Everything is red:**\nRun and hide! You have about 10min until your boss comes storming the office and heads are rolling.\n(5xx response)\n\n## Makers Guide\n\n### Parts\n\n![LEDs everywhere](https://asset.msi.com/global/picture/article/article_147486003557e89403d6afe0.jpg)\n\n* [RGB LED Matrix](http://a.co/89lfm33)\n* [Raspberry Pi](https://www.raspberrypi.org)\n* [Adafruit RGB Matrix HAT](https://www.adafruit.com/product/2345) (optional)\n* power supply (5V and ~5A per 32x32 pixel)\n * [for the Adafrouit HAT](https://www.amazon.com/XINY-100V-240V-Switching-Interface-Surveillance/dp/B01JI373AY/)\n * or [this one](www.amazon.com/Pasow-Strip-Switching-Supply-Adapter/dp/B015C6DU6M/)\n\n### Assembly\n\n![Mac Gyver defusal](https://s-media-cache-ak0.pinimg.com/736x/c7/fb/61/c7fb612016dbc8f632b0b4349081247b.jpg)\n\n[Henner Zeller][hzeller]\nnot only wrote the library that powers LED matrixes on the Pi, but also wrote a very detailed [documentation][rpi-rgb-led-matrix] that should help you assemble all the parts.\n\nOnce you have the [demo](https://github.com/hzeller/rpi-rgb-led-matrix#lets-do-it) running and all pixels are in the right place, come back and continue with the setup.\n\n### Setup\n\n![Star Trek helm](http://vignette4.wikia.nocookie.net/memoryalpha/images/9/94/Galaxy_mission_ops.jpg/revision/latest/scale-to-width-down/800?cb=20120226203320\u0026path-prefix=en)\n\nYou are almost done. All we need now is Python 3 because we are using asyncio (duh).\n\n#### Install dependencies\n```shell\nsudo apt-get install git python3-dev python3-pillow python3-pip -y\n```\n\n#### Build an install package\n```shell\ncd /tmp\ngit clone --recursive https://github.com/codingjoe/heroku-log-lights.git\ncd heroku-log-lights\nmake\nsudo make install\n```\n\n#### Run HLL\n\nTo access the router logs of your Heroku application, you will need an API token.\nYou can ether install the [heroku toolbelt][heroku-toolbelt]\nor obtain the [API AUTH token][heroku-token] from the heroku website.\n\nVia heroku toolbelt:\n\n```shell\nheroku-log-lights -a YOUR_APP_NAME -t `heroku auth:token`\n```\n\nor via token:\n\n```shell\nexport HEROKU_API_TOKEN=YOUR_SECRET_TOKEN\nheroku-log-lights -a YOUR_APP_NAME\n```\n\nThat's it, you are ready to roll! Enjoy\n\n![Knight Rider approved](http://sm.ign.com/ign_de/screenshot/default/knight-rider_u17w.jpg)\n\n[heroku]: https://www.heroku.com/\n[heroku-toolbelt]: https://toolbelt.heroku.com/\n[heroku-token]: https://devcenter.heroku.com/articles/platform-api-quickstart#authentication\n[hzeller]: https://github.com/hzeller\n[rpi-rgb-led-matrix]: https://github.com/hzeller/rpi-rgb-led-matrix\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodingjoe%2Fheroku-log-lights","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodingjoe%2Fheroku-log-lights","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodingjoe%2Fheroku-log-lights/lists"}