tool2026

Devil Watchdog

One control room for every site, server and cron job — and a Telegram message when something breaks

Next.js 16TypeScriptTurso (libSQL)Drizzle ORMNextAuthRechartsTailwind CSSTelegram Bot API
Personal Project
2026
Visit live site
Devil Watchdog

Overview

A centralized event monitoring hub for websites, apps, servers and cron jobs. Applications push structured events to it, it polls endpoints for uptime, servers report their own health, and cron jobs check in when they finish. When something goes wrong it says so on Telegram. When everything is fine the dashboard reads grey on purpose — the only colour on screen is a problem.

Challenge

Monitoring tends to arrive as a dozen half-solutions: uptime from one service, server metrics from another, cron failures from nowhere at all, and logs scattered across machines. The failure that actually hurts is the silent one — the backup that stopped running three weeks ago, the nightly job that quietly never fired. Nothing alerts on an event that never happened.

Solution

One hub with four ways in. Events are pushed by any app or script to a single API endpoint, authenticated per project. Monitors actively poll endpoints and validate the response body, catching the 200-with-an-error-page case. Heartbeats are dead-man switches: a cron job curls a secret ping URL when it finishes, and silence becomes a critical alert. Watch rules do the same for events — if backup.completed has not arrived in 24 hours, that absence is the alert. A zero-dependency bash agent reports disk, memory, CPU, load and systemd state every five minutes.

Results

The dashboard answers one question in its headline — does anything need me — then lists every problem once above a per-project board. Analytics looks backwards instead of counting events: uptime ranked worst first over 90 days, incidents with median recovery and repeat offenders, alerts that fired for something that healed itself. Notification rules carry cooldowns and thresholds so a noisy source cannot flood the chat, and every dispatch decision is logged and inspectable.

Key Features

01Event ingestion with per-project API keys, batching, rate limiting and hostname → server attribution
02HTTP monitors with configurable method, expected status, interval, timeout and response-body validation
03Heartbeats for cron jobs — a missed ping becomes a critical alert
04Server health from a zero-dependency bash agent: disk, memory, CPU, load, systemd services, zombies
05Watch rules that alert on the event that never arrived, filtered by channel, server, tags and metadata
06Telegram delivery with severity baselines, mute rules, cooldowns and thresholds
07Dashboard that lists every problem once, above a per-project board
08Analytics looking back 90 days: uptime worst-first, incidents, recovery times, alert delivery
0923 themes that restyle the whole app — type, corner radius and ground texture, not just the palette

Gallery