Monitoring, reliability, and more.
Shopify’s status page is green, the theme loads, the uptime check gets a 200 — and the “Check out” button has done nothing since last night’s app update. Three safe levels of mocking a purchase, the six-line journey, and what the alert looks like when a step fails.
Your care plan promises monitoring, and a ping cannot tell you the contact form stopped sending or the WooCommerce checkout button is dead. The two journeys every client site needs, one workspace for forty clients, a status page per client, and what to charge for it.
One cron line on a GL.iNet or OpenWrt router sends a heartbeat; the silence becomes your alert — delivered over cellular, so “my internet is down” can actually reach you. Plus outage receipts for your next ISP support call.
A webhook turns a #alerts channel into a pager: free push to your phone, scrollable history, everyone sees the same outage. Exact menu paths, the notification setting everyone misses, and the escalation ladder for when Discord isn’t enough.
192.168.x.x, localhost and anything behind a firewall cannot be reached by an external checker — by any service, at any price. Turn the connection around instead: an agent that reports out, or a heartbeat the machine sends in. Neither needs an open port.
Everyone starts by alerting on CPU, which is the metric least worth paging on — it produces false positives and false negatives. A ranking of what to page on, what to only chart, and the two settings that matter more than any threshold.
Self-hosted monitoring is excellent at everything except the outage that takes the host down with it — power, panic, network, terminated instance. Why that gap never shows up in testing, and the smallest thing that closes it.
A node went quiet for 109 seconds and came back on the wrong kernel. The journal was empty, last printed nothing, and wtmpdb boottime said the boot time could not be found. Where the answer actually was.
Your Proxmox host can sit at 4% CPU while a VM has been off since Tuesday. Watch guests, storage and quorum with one config section — then build a ladder that pings Discord first and texts you if nobody looks.
A few tracebacks an hour is life on the internet; forty in five minutes is an incident. How to page on an error-rate spike and get the actual traceback delivered in the alert — no Sentry SDK, no log pipeline, one config line.
Two Raspberry Pis at home and a cloud web server — watched end to end, with alerts to Discord, without paying a cent. A real walkthrough with every click.
"Up" is four separate facts: DNS, network, app, content. Layer dns + ping + http/s monitors (and a beacon if you host) so the alert tells you what broke, not just that something did.
Cron runs your backups and jobs in silence — and stays silent when they break. Five real ways to get a page when a job fails or, worse, never runs at all. Bash you can copy, tradeoffs spelled out.
Counting errors and searching them are different jobs with very different bills. One turns a pattern into a number you can page on — with the traceback in the alert — the other keeps the stream searchable. Most machines only need the first.
Hand-configuring each node produces a fleet where one machine has no alert channel and nobody notices until it matters. Thresholds, channels, escalation and runbooks applied the moment a machine first checks in — and why seeding is deliberately not syncing.
Switches, PDUs, printers and UPS units have been keeping statistics for decades and nothing ever asks. The four OIDs worth knowing, what actually deserves an alert, and why the poll happens on your LAN and never on the internet.
Every tool ships the same five numbers, and none of them is the one that hurts you. Queue depth, certificate days, backup age, seats left — if a command prints a number, the agent charts it and pages you on it. Including the duration gate that stops deploy spikes waking anyone.
Printers, switches, a NAS, the badge reader — invisible to agents and unreachable from outside, so they get monitored by complaint. One agent already inside your network can check them all over HTTP, TCP or ping, and measure latency where it matters.
Task Manager and Event Viewer are silent by design — nothing in the box will call you when D: fills at 4 AM or the machine stops existing. One agent pushing out over 443, exactly what a Windows push contains (and what it does not), and the devices it can watch for you.
Your UniFi console goes quiet the moment you close the tab. Turn a switch, gateway or AP into a monitored device with real alerts — SNMP polled from inside your network, nothing exposed to the internet.
CPU, memory, and disk on a handful of boxes — with a page when one breaks — and none of the Prometheus overhead. Push-based, works behind NAT, no open ports, with a real 6 AM incident to show it working.
Backups don't fail loudly — they stop quietly, and you find out during the restore. Real restic and borg examples, a dead-man's-switch heartbeat, and the honest bit about verifying restores.
Give your team an on-call agent that acks the alert, reads your runbook, investigates on your own boxes, and writes back evidence — before a human is ever woken. Works with any MCP agent; we use Claude. A full walkthrough for IT teams.