diff --git a/health-check.sh b/health-check.sh index 32bf594..8aba9a1 100755 --- a/health-check.sh +++ b/health-check.sh @@ -62,6 +62,17 @@ check_disk() { ok "Disk usage at ${pct}% on $mount" fi done < <(df -h | awk 'NR>1' | grep -v ' /dev' | grep -v ' /sys' | grep -v ' /proc' | grep -v ' /run' | grep -v ' /snap' | grep -v 'overlay2' | grep -v 'docker') + local used_kb total_kb total_pct + used_kb=$(df --block-size=1K / | awk 'NR==2 {print $3}') + total_kb=$(df --block-size=1K / | awk 'NR==2 {print $2}') + total_pct=$(( used_kb * 100 / total_kb )) + if [ "$total_pct" -ge 90 ]; then + fail "Total disk usage at ${total_pct}% on / — critically low" + elif [ "$total_pct" -ge 80 ]; then + warn "Total disk usage at ${total_pct}% on /" + else + ok "Total disk usage at ${total_pct}% on /" + fi } check_common() {