tommy
38fa22d444
monitoring: add quarterly UPS self-test script (Phase 4B)
ups-quarterly-test.sh:
- Runs test.battery.start.quick on cyberpower1 then cyberpower2
- 120s wait between tests (allow recharge)
- Logs pass/fail to syslog via logger -t ups-quarterly-test
- Password stored in single-quoted variable to prevent shell expansion
- Deployed on beast (/usr/local/bin/), cron: first Sunday of Jan/Apr/Jul/Oct 02:00
Manual run 2026-05-06:
cyberpower1: Done and passed (charge 97% post-test, recharged normally)
cyberpower2: Done and passed (charge 100%)
Grafana alerts (in grafana.db):
cfl8lrs1mxnnka UPS Battery Charge Low (<80%) — break-tested pending ✓
afl8lrs4mbaioa UPS On Battery (power outage) — break-tested fired ✓
Note: nut_battery_test_result not exposed by nut-exporter v1.2.1.
Pass/fail tracked via syslog only for now. Adding to Phase 5 if exporter
gains test-result metric support.