edit & add post image
Some checks failed
Deploy Blog / deploy (push) Has been cancelled

This commit is contained in:
2026-02-04 17:03:09 +02:00
parent 9364aacade
commit ac903da20c
2 changed files with 7 additions and 7 deletions

View File

@@ -2,17 +2,19 @@
title: "Simple Homelab Health Monitoring with Discord Webhooks" title: "Simple Homelab Health Monitoring with Discord Webhooks"
date: "2026-02-04" date: "2026-02-04"
excerpt: "A lightweight bash-based monitoring setup that sends daily system health summaries to Discord - no Prometheus required." excerpt: "A lightweight bash-based monitoring setup that sends daily system health summaries to Discord - no Prometheus required."
image: "/images/posts/discordWebhook.png"
--- ---
I wanted a lightweight way to keep tabs on my homelab server (HP ProDesk 600 G2) without running a full monitoring stack like Prometheus/Grafana or Netdata. The solution: a couple of bash scripts that collect stats hourly and send a daily summary to Discord. I wanted a (VERY) lightweight way to keep tabs on my homelab server. I didn't want to ssh to it periodically or a full monitoring stack like Prometheus/Grafana/Netdata. Here's my solution:
## The Setup ## The Setup
The system has two components: Two components make the magic happen:
**1. Collector** - Runs every hour via cron, appending CPU, memory, load, and disk usage to a daily CSV file. Data is retained for 7 days. **1. Collector** - Runs every hour via cron, appending CPU, memory, load, and disk usage to a CSV file. Data is retained for 7 days (I might have a hoarding issue).
**2. Reporter** - Runs daily at 9 AM, calculates min/avg/max from the collected samples, checks for journal errors and SSD health, then sends a formatted embed to a Discord webhook. **2. Reporter** - Runs daily at 9 AM, calculates min/avg/max from the collected samples, checks for journal errors and SSD health, then sends a formatted embed to a Discord webhook. I start work at 9 AM so this is another pleasant addition to the daily ritual email-checking and groaning over a cup of steaming tea.
## What Gets Monitored ## What Gets Monitored
@@ -33,9 +35,7 @@ The report color-codes itself: green for OK, yellow for warnings (high usage or
- **Discord integration** - Notifications where I already am - **Discord integration** - Notifications where I already am
- **Actionable** - Only alerts on actual issues with `--errors-only` mode - **Actionable** - Only alerts on actual issues with `--errors-only` mode
## Sample Output The title image to this post is the actual summary with all the stats at a glance. If there are errors in the journal, they're included in a code block at the bottom.
The Discord embed shows a clean summary with all the stats at a glance. If there are errors in the journal, they're included in a code block at the bottom.
## Source ## Source

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB