Akash Bisht

AB 4, Linux tool, solo, 25 stars

Self-healing monitor

A Bash script that checks CPU, memory and disk every five minutes, restarts the Docker daemon when it dies and charts the history on a small dashboard.

Observed
Dec 2025 to Feb 2026
Role
Everything. 28 commits.
Made with
  • Bash
  • cron
  • Docker
  • Chart.js
  • GitHub Actions
  • ShellCheck
Links

Context

Services crash at 3 AM when nobody is watching. I wanted the machine to notice, fix the obvious case on its own and keep a record of what happened.

Idea

Cron and plain files, no agent and no database. The script writes metrics.json, a CSV history and an alert log, and the dashboard only reads them.

Craft

A warning at 80% and a critical alert at 90%, with a five minute cooldown so one bad spike doesn’t send twenty alerts. CI runs ShellCheck on every pull request.

Outcome

It installs with one crontab line, ships with a Dockerfile, and its log shows the daemon going down and coming back on its own.

The monitor dashboard: CPU 12%, memory 54%, disk 13%, a 15 minute history chart and a log reading “docker daemon down” then “docker daemon restarted”
Plate 1The monitor dashboard: CPU 12%, memory 54%, disk 13%, a 15 minute history chart and a log reading “docker daemon down” then “docker daemon restarted”
The repo’s Bash CI runs on GitHub: “fixed the shell check” and “fixed the shebang” fail ShellCheck, then “fixed the json file” passes
Plate 2The repo’s Bash CI runs on GitHub: “fixed the shell check” and “fixed the shebang” fail ShellCheck, then “fixed the json file” passes
The system-monitor repository on GitHub: analyse.sh, dashboard.html, a Dockerfile and the CI workflow, 28 commits
Plate 3The system-monitor repository on GitHub: analyse.sh, dashboard.html, a Dockerfile and the CI workflow, 28 commits

Selected stars

Real commits from this figure, with their messages as I wrote them. Each opens on GitHub.

  1. 5e5435521 Dec 2025added docker monitoring and restarts it if it is not working or crashed
  2. 391253221 Dec 2025added files to contains the cooldown and added cooldown logic
  3. 8c35c8721 Dec 2025added fronted which shows the stats of the system
  4. c85e01825 Dec 2025added ci
  5. 340ccb12 Feb 2026added a dockerfile

Next figure, AB 5

Upstream