lego-monitoring/docs/ups.md
2026-01-18 15:33:56 +03:00

85 lines
2.1 KiB
Markdown

# UPS monitoring
Both steps require configuring upsmon at least to the point of outputting UPS updates to upsmon's logs.
## NixOS
NOTIFYCMD is set automatically. Make sure to set NOTIFYFLAGs to include EXEC for events that are to be reported.
The following snippet enables all events to be reported to wall, system's log and lego-monitoring:
```nix
{
power.ups.upsmon.settings.NOTIFYFLAG = (map (ntype: [ntype "SYSLOG+WALL+EXEC"]) [
"ONLINE"
"ONBATT"
"LOWBATT"
"FSD"
"COMMOK"
"COMMBAD"
"SHUTDOWN"
"SHUTDOWN_HOSTSYNC"
"REPLBATT"
"NOCOMM"
"NOPARENT"
"CAL"
"NOTCAL"
"OFF"
"NOTOFF"
"BYPASS"
"NOTBYPASS"
"ECO"
"NOTECO"
"ALARM"
"NOTALARM"
"OVER"
"NOTOVER"
"TRIM"
"NOTTRIM"
"BOOST"
"NOTBOOST"
"OTHER"
"NOTOTHER"
"SUSPEND_STARTING"
"SUSPEND_FINISHED"
]);
}
```
## Non-NixOS
* NOTIFYCMD should be set to `/opt/lego-monitoring/.venv/bin/write-ups-status`.
* As above, NOTIFYFLAGs should include EXEC. Example for all events:
```
NOTIFYFLAG ONLINE SYSLOG+WALL+EXEC
NOTIFYFLAG ONBATT SYSLOG+WALL+EXEC
NOTIFYFLAG LOWBATT SYSLOG+WALL+EXEC
NOTIFYFLAG FSD SYSLOG+WALL+EXEC
NOTIFYFLAG COMMOK SYSLOG+WALL+EXEC
NOTIFYFLAG COMMBAD SYSLOG+WALL+EXEC
NOTIFYFLAG SHUTDOWN SYSLOG+WALL+EXEC
NOTIFYFLAG SHUTDOWN_HOSTSYNC SYSLOG+WALL+EXEC
NOTIFYFLAG REPLBATT SYSLOG+WALL+EXEC
NOTIFYFLAG NOCOMM SYSLOG+WALL+EXEC
NOTIFYFLAG NOPARENT SYSLOG+WALL+EXEC
NOTIFYFLAG CAL SYSLOG+WALL+EXEC
NOTIFYFLAG NOTCAL SYSLOG+WALL+EXEC
NOTIFYFLAG OFF SYSLOG+WALL+EXEC
NOTIFYFLAG NOTOFF SYSLOG+WALL+EXEC
NOTIFYFLAG BYPASS SYSLOG+WALL+EXEC
NOTIFYFLAG NOTBYPASS SYSLOG+WALL+EXEC
NOTIFYFLAG ECO SYSLOG+WALL+EXEC
NOTIFYFLAG NOTECO SYSLOG+WALL+EXEC
NOTIFYFLAG ALARM SYSLOG+WALL+EXEC
NOTIFYFLAG NOTALARM SYSLOG+WALL+EXEC
NOTIFYFLAG OVER SYSLOG+WALL+EXEC
NOTIFYFLAG NOTOVER SYSLOG+WALL+EXEC
NOTIFYFLAG TRIM SYSLOG+WALL+EXEC
NOTIFYFLAG NOTTRIM SYSLOG+WALL+EXEC
NOTIFYFLAG BOOST SYSLOG+WALL+EXEC
NOTIFYFLAG NOTBOOST SYSLOG+WALL+EXEC
NOTIFYFLAG OTHER SYSLOG+WALL+EXEC
NOTIFYFLAG NOTOTHER SYSLOG+WALL+EXEC
NOTIFYFLAG SUSPEND_STARTING SYSLOG+WALL+EXEC
NOTIFYFLAG SUSPEND_FINISHED SYSLOG+WALL+EXEC
```