🚨 Alerting

Alerting provides early warnings when something in the homelab requires attention — disk failures, container crashes, service outages, storage issues, or unusual resource usage. Alerts are generated from metrics collected by Prometheus and evaluated through Grafana’s Unified Alerting system (with optional integration to Prometheus Alertmanager).

This page serves as the central reference for alerting strategy, alert definitions, and notification routing.


🧭 Overview

The alerting pipeline follows the same observability flow:

Services → Exporters → Prometheus → Grafana → Notifications

Both Prometheus and Grafana are deployed and configured using Ansible, ensuring alert rules remain version‑controlled and reproducible.


📌 Alerting Philosophy

The goal of alerting in the homelab is:

This page will grow as you define which conditions matter most for your environment.


📐 Alert Template

Use this template for each alert to be added. It keeps documentation consistent and makes it easy for contributors to understand what each alert does.

# **Alert Name**
A short, descriptive name (e.g., *Proxmox Node Down*, *Ceph OSD Failure*, *Plex Transcode Saturation*).

## **Purpose**
Why this alert exists and what problem it detects.

## **Trigger Condition**
Describe the metric and threshold that triggers the alert.

Example:
- `node_exporter` reports CPU > 90% for 5 minutes  
- Ceph OSD marked `down`  
- Nginx 5xx error rate exceeds 2%  

## **Severity**
- `info` — useful but not urgent  
- `warning` — needs attention soon  
- `critical` — immediate action required  

## **PromQL Expression**
Add the PromQL rule once defined.

PromQL goes here```

What to check, where to look, and typical remediation steps.

Notes

Any additional context, links to dashboards, or troubleshooting pages.

```


🧱 Planned Alert Categories

Compute (Proxmox / VMs)

Storage (Ceph / Synology / TrueNAS)

Applications (Docker Media Stack / Plex)

Networking

Reverse Proxy