"Uptime Kuma" is a self-hosted monitoring tool, which has a very nice design and which fits in a small memory and compute footprint. This makes it a good fit for household and homelab operations.
I'm still figuring out a permanent home on my home network / tailnet for it, but for the moment I have it running on my laptop which means I get to see some relatively more frequent failure conditions as the network goes on and offline when I power down or move between locations.
"Uptime Kuma" can do the usual sorts of things you might want to do with a simple network monitor, including ping, DNS lookup, HTTP fetch, very simple pattern match on web pages, and the like. It won't let you run an arbitrary command on a schedule though, and the web site pattern matching happens without any parsing of the HTML page, so some fancy setups might be hard.
I'm currently using it to monitor network infrastructure like my home router and a few ATT systems on the traceroute path to the rest of the Internet. A separate dashboard watches to see that my PiAware ADS-B airplane monitor is getting good data; it wasn't when I started watching things, so there was a weekend side-quest to move the receiver to get a better view of the sky.
I haven't set up any active alerts or alarms yet. There are feeds into a bunch of systems including SMS, Home Assistant, Telegram, and Slack.
One of the virtues of Uptime Kuma is that the development community is very mindful of resource consumption, and things like memory leaks or inefficiencies that would prevent it from running on an old Pi or a free tier on a container service like https://fly.io have been fixed.
An alternative to this if you have more resources to throw at the task (and more features with it) is OneUptime which is also available as a hosted system. The open source version of OneUptime wants 8 cores (!) to run on, so that kind of ruled it out for my uses.
https://github.com/OneUptime/oneuptime
Another alternative is HealthChecks which drives the telemetry and monitoring with a Python and Django application. This too has a hosted free tier of service or can be run in your homelab self-hosted.
In truth my homelab setup (which is mostly a pile of Raspberry Pi systems) doesn't have much downtime, and even if it did the consequences would be minimal. Still it's nice to get a quick overview when everything is working, and some speedy look at where to go next if something isn't quite right.
Comments
You can follow this conversation by subscribing to the comment feed for this post.