Published Jul 25, 2026, 8:30 AM EDT Shekhar Vaidya is a veteran technology journalist and computer science engineer. He is the founder of TechLatest, where he has spent years providing technical analysis on hardware and Windows ecosystems. Now a Computing Writer at XDA, Shekhar leverages his deep background in NAS, storage solutions, and PC internals to help readers master their tech. Every time I sat down at my workstation, I’d instinctively open multiple dashboards to see my homelab status before doing anything. And it had become such a routine that I barely noticed I was doing it. I usually start with Beszel for server health and then move on to Uptime Kuma; if I see anything odd, I open Portainer for overall server status and Scrutiny for anything disk-related. I didn’t have any issues with any of the monitoring tools. But I was spending more time on multiple dashboards than actually getting anything done. I needed one dashboard where I could just take a peek, see whether everything was okay, and move on with my other work. That was when I came across Pulse. It looked like the one dashboard that could replace all the others — but not quite. The hardest part of running a homelab isn't the setup. It's knowing where to look when something's wrong. Nothing was actually broken I was just checking too many places. As my homelab grew, I started taking uptime and health more seriously. Monitoring was something I added over time as the need grew, not from day one. I initially started with a couple of services and me as the only user, so monitoring services felt like overkill. I could just open Portainer once in a while to check on things. But as the container count grew from a couple to tens and then twenties, monitoring every container manually was not feasible. Not only the container status, but my server health also concerned me. For context, I built my homelab server out of a repurposed 8-year-old laptop. The laptop was a Dell Latitude 7480, featuring a Core i5-6300U CPU, roughly 12GB of RAM, and a 256GB SSD. So, putting 20+ containers on it felt like taking all the juice out of it. After almost a year with my homelab, I gradually added various monitoring services — Uptime Kuma for public-facing services (through Pangolin), Beszel for server resources, and Scrutiny for disk SMART health. And Portainer was already there for internal Docker containers. Together, they handled all my questions about my homelab health and uptime. Whether it was "Is my public service up?" or "Is the server under load?" I opened whichever dashboard matched the concern, and it answered instantly. But that was the issue. I had all the information, but it was fragmented over four different dashboards. None of these contradicted each other. They simply had no awareness of each other. For example, a container could be running in Portainer while the server was under memory pressure in Beszel. At the same time, Uptime Kuma could show green while a container was restarting repeatedly. There was no direct connection between the dashboards — I was the one manually stitching them together. So, for a long time, I was looking for something that could tell me whether I needed to open the others. Then Pulse started connecting everything One dashboard replaced the first two. As usual, in my free time, I was scrolling through Reddit threads, and I came across one thread where OP was asking for GUI monitoring and management tools. I casually opened it and went through the comments; most of them recommended Beszel and a few CLI-based tools. One even suggested Komodo, and another suggested Pulse. A few of the commenters seconded that too. So, I decided to visit its GitHub repo and the landing page. The landing page itself convinced me halfway — the hero banner's line, “The sysadmin that watches your entire infrastructure 24/7,” did a lot of the work. The other half came from the live demo it provided. I then decided to give it a try, self-hosting the community version on my homelab. The first time I logged in after setup, I had the same information that normally required jumping between multiple dashboards. The Docker dashboard alone said enough, like the host health, stopped containers, containers needing updates, start/stop/restart actions, and per-container metrics. It used to take me to multiple Portainer tabs and a quick glance at the Beszel dashboard. The alert tab told me more than anything else; out of 241 total alerts, it had already filtered 177 as critical and 64 as warnings, excluding the general noise. Without me configuring anything, it had already highlighted the more serious ones, like Pi-hole being unhealthy and Meilisearch and cloudflared being killed by OOM. For the first time, it felt like something that could answer my everyday questions, like "Does anything need my attention?" from a single dashboard. It wasn't perfect, though. Pulse A self-hosted monitoring dashboard that pulls Docker, server, and uptime checks into one place — with an optional local-LLM layer for automated investigation. Pulse didn't replace everything One dashboard still earned its place. Pulse became the homepage. Beszel didn't get deleted, nor did Portainer get pushed away — they just stopped being the first tab you opened. Two of my tools were still untouched — Uptime Kuma and Scrutiny. I wanted to see if Pulse could take over what Kuma was doing. So, I decided to explore the Pulse settings. I came across a ton of features I had yet to experience. As I mentioned before, I use Uptime Kuma mainly for monitoring the uptime of my public-facing services. I started adding those URLs under Pulse’s Availability checks monitoring feature. I added all my five domains — Jellyfin, Immich, Nextcloud, ntfy, and Vaultwarden. While adding the services, I noticed one thing: “HTTP statuses below 500 count as reachable.” At that time, I chose to ignore it because I didn’t consider it a big issue. Once all five services were added, the dashboard started showing green checks for all of them. Since none of my services were facing any outage, I decided to create one. I intentionally stopped my Vaultwarden container because it was the least used one. I waited for a few seconds and then clicked on the Test button; it surprisingly validated it as online. I checked the container dashboard inside Pulse; it was showing it stopped there too. I checked the Pangolin dashboard; it was down there too. After a few troubleshooting sessions, I tried connecting the dots. Since Vaultwarden was behind SSO in Pangolin, even when the container was down, it was returning a 403 status. And as mentioned earlier, the HTTP statuses below the 500 line hit me then. Since it was a 403 and not a 502, Pulse still read it as online. Once I bypassed Pangolin SSO for the /alive endpoint, Pulse immediately monitored it correctly. After that, I connected the alerts to my ntfy instance via webhook. That closed the loop of detecting issues and sending them through my ntfy instance. Though Kuma offered more granular monitoring like timeouts and expected responses, Pulse was enough for my setup. After all this, I still hadn't found a replacement for one of my dashboards. Pulse monitored services, containers, and servers, but it didn’t monitor SMART data the way Scrutiny did. The Pulse dashboard exposed basic disk information like usage, free, and total storage, but it wasn't much more than a one-liner terminal command would expose. While looking for something to replace Scrutiny, I came across Patrol. It was something none of the previous tools offered. It was basically an AI analysis of my servers' data. Initially, I ignored it because I didn’t want to expose my homelab to a cloud LLM. But when digging deeper, I saw there was local LLM integration via Ollama. I already had a small LLM (qwen2.5:1.5b) in my homelab from my previous experiment, so I immediately decided to give Patrol a try. Though I was a little skeptical whether this small model would work, I was surprised when I ran the readiness check; it said, “The selected model can run Patrol work on this install.” It completed its first manual run successfully, though it hadn't yet seen a real incident to actually test itself against. It looked promising, but it hadn't earned my trust yet. By the end of testing, Pulse hadn’t become my only monitoring dashboard, but it had become the one I would open first. The habit changed. The stack didn't — yet. When I decided to try Pulse, my intention wasn’t to replace any of my existing monitoring stacks. I was looking for something that would replace my daily routine of opening two to four different monitoring dashboards. After trying Pulse for a few days, my workflow got simpler, even if the stack didn’t. For my homelab, it replaced my habit of opening Uptime Kuma, Beszel, and Portainer (for container health) every day. Scrutiny stayed because SMART monitoring wasn’t something Pulse was built for. I also configured Patrol, and it passed the readiness test and completed its first run cleanly, but I've yet to see how it helps me with server monitoring in the long term. Pulse hadn't completely replaced any of my monitoring stack, but it had earned a permanent spot in my homelab, and it had become the first dashboard I open.
I replaced four monitoring dashboards with Pulse, but one tool refused to go away
Full Article
Original Source
Read the full article at Xda-developers →KhanList aggregates and links to publicly available news content. We do not host full articles from third-party sources. Always verify important information with original sources.