this post was submitted on 09 Oct 2026
90 points (97.9% liked)

Selfhosted

62846 readers
785 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS
 

Running services, network usage, memory usage, bandwidth, disk I/O, successful logins, whether the thing is even alive, etc...
So far my only method has been "hope and pray".

you are viewing a single comment's thread
view the rest of the comments
[–] lIlIlIlIlIlIl@lemmy.world 14 points 22 hours ago (1 children)

Uptime Kuma! For HDDs I have them report their “ping” as percentage full

[–] WeirdGoesPro@lemmy.dbzer0.com 7 points 21 hours ago (1 children)

Can you teach me this wizardry?

[–] lIlIlIlIlIlIl@lemmy.world 4 points 8 hours ago (1 children)

Sure! In Uptime Kuma, add a monitor with type Push. It gives you a URL with a unique token, and the monitor goes into “down” state if nothing calls that URL within the heartbeat interval. Then have a cron (or a systemd timer or whatever) run this on the machine with the drive every 5 or 10 minutes:

use=$(df --output=pcent /mnt/yourdrive | tail -1 | tr -dc ‘0-9’)
curl -fsS -G “http://your-kuma:3001/api/push/TOKEN --data-urlencode “status=up” --data-urlencode “msg=${use}% used” --data-urlencode “ping=${use}”

Ping is of course meant to be response time, but Kuma will graph any number you toss in, so you get a “filled” chart for the drive. I also send status=down once usage passes a threshold. And if the box itself should fall over for some reason, the missing check-ins trigger the alert too.

(I typed this quick on my phone, so please double-check and probably don’t blindly copy-paste)

[–] WeirdGoesPro@lemmy.dbzer0.com 2 points 4 hours ago

Thank you! This is dope!