A full disk is one of the most preventable outages there is — unlike CPU or memory pressure, disk space almost always fills up gradually, which means there's normally plenty of warning if you're watching for it.
What's measured
- Disk space usage, per mount point / volume, as both a percentage and an absolute value
- Inode usage, on Linux/Unix filesystems — it's entirely possible to run out of inodes (the filesystem's bookkeeping structures) with plenty of raw space still free, especially on hosts that create very large numbers of small files, such as log or mail servers
- Disk I/O, where available — read/write throughput and latency, useful for spotting a storage bottleneck on hosts sensitive to disk performance, like database servers
Setting thresholds
A common pattern is a Warning around 80% used and a Critical around 90–95%, but leave more headroom on volumes that fill unpredictably or quickly (active log volumes, upload directories) than on ones that grow slowly and predictably.
Watch the trend, not just the snapshot
A volume sitting at 60% used isn't automatically fine — if it was at 40% a month ago, it's on a trajectory that's worth planning around well before it crosses a Warning threshold. Reviewing disk trends periodically (or building a custom dashboard filtered to disk widgets across your fleet) catches slow-growth problems that a single point-in-time check will always miss.
Per-mount-point monitoring
Always check disk usage per mount point rather than only at the root filesystem — a separate /var or /data volume can fill up completely while the root filesystem still shows plenty of free space, and a host-wide average would hide that entirely.