I’m trying to monitor a Cyberpower UPS attached to a freenas box. If I execute the ups-nut.sh script, it works as expected:
root@mediastore:/etc/snmp # ./ups-nut.sh
100
592
1380
53.8
48
120
122.0
57
Running upsc works as well:
root@mediastore:/etc/snmp # upsc ups
battery.charge: 100
battery.charge.low: 35
battery.charge.warning: 20
battery.mfr.date: CyberPower Systems
battery.runtime: 1380
battery.runtime.low: 592
battery.type: PbAcid
battery.voltage: 53.8
battery.voltage.nominal: 48
device.mfr: CyberPower Systems
device.type: ups
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 2
driver.parameter.port: /dev/ugen0.6
driver.parameter.synchronous: no
driver.version: 2.7.4
driver.version.data: CyberPower HID 0.4
driver.version.internal: 0.41
input.transfer.high: 140
input.transfer.low: 80
input.voltage: 122.0
input.voltage.nominal: 120
output.voltage: 122.0
ups.beeper.status: enabled
ups.delay.shutdown: 20
ups.delay.start: 30
ups.load: 56
ups.mfr: CyberPower Systems
ups.productid: 0601
ups.realpower.nominal: 700
ups.status: OL
ups.timer.shutdown: -60
ups.timer.start: -60
ups.vendorid: 0764
However when I try to query it via SNMP, it returns back "unknown for everything:
root@mediastore:/etc/snmp # snmpwalk -v2c -c secret 192.168.1.54 NET-SNMP-EXTEND-MIB::nsExtendObjects | grep ups-nut
NET-SNMP-EXTEND-MIB::nsExtendCommand."ups-nut" = STRING: /etc/snmp/ups-nut.sh
NET-SNMP-EXTEND-MIB::nsExtendArgs."ups-nut" = STRING:
NET-SNMP-EXTEND-MIB::nsExtendInput."ups-nut" = STRING:
NET-SNMP-EXTEND-MIB::nsExtendCacheTime."ups-nut" = INTEGER: 5
NET-SNMP-EXTEND-MIB::nsExtendExecType."ups-nut" = INTEGER: exec(1)
NET-SNMP-EXTEND-MIB::nsExtendRunType."ups-nut" = INTEGER: run-on-read(1)
NET-SNMP-EXTEND-MIB::nsExtendStorage."ups-nut" = INTEGER: permanent(4)
NET-SNMP-EXTEND-MIB::nsExtendStatus."ups-nut" = INTEGER: active(1)
NET-SNMP-EXTEND-MIB::nsExtendOutput1Line."ups-nut" = STRING: Unknown
NET-SNMP-EXTEND-MIB::nsExtendOutputFull."ups-nut" = STRING: Unknown
NET-SNMP-EXTEND-MIB::nsExtendOutNumLines."ups-nut" = INTEGER: 8
NET-SNMP-EXTEND-MIB::nsExtendResult."ups-nut" = INTEGER: 0
NET-SNMP-EXTEND-MIB::nsExtendOutLine."ups-nut".1 = STRING: Unknown
NET-SNMP-EXTEND-MIB::nsExtendOutLine."ups-nut".2 = STRING: Unknown
NET-SNMP-EXTEND-MIB::nsExtendOutLine."ups-nut".3 = STRING: Unknown
NET-SNMP-EXTEND-MIB::nsExtendOutLine."ups-nut".4 = STRING: Unknown
NET-SNMP-EXTEND-MIB::nsExtendOutLine."ups-nut".5 = STRING: Unknown
NET-SNMP-EXTEND-MIB::nsExtendOutLine."ups-nut".6 = STRING: Unknown
NET-SNMP-EXTEND-MIB::nsExtendOutLine."ups-nut".7 = STRING: Unknown
NET-SNMP-EXTEND-MIB::nsExtendOutLine."ups-nut".8 = STRING: Unknown
I’m running librenms in a docker container, but validate looks ok:
root@f47df83609da:/# /opt/librenms/validate.php
====================================
Component | Version
--------- | -------
LibreNMS | 1.34
DB Schema | 217
PHP | 7.1.12-1+ubuntu16.04.1+deb.sury.org+1
MySQL | 10.1.29-MariaDB-1~xenial
RRDTool | 1.5.5
SNMP | NET-SNMP 5.7.3
====================================
[OK] Database connection successful
[OK] Database schema correct
[WARN] IPv6 is disabled on your server, you will not be able to add IPv6 devices.
[WARN] Your install is over 24 hours out of date, last update: Sat, 25 Nov 2017 11:48:49 +0000
[FIX] Make sure your daily.sh cron is running and run ./daily.sh by hand to see if there are any errors.
[WARN] Your local git branch is not master, this will prevent automatic updates.
[FIX] You can switch back to master with git checkout master
[WARN] Your local git contains modified files, this could prevent automatic updates.
[FIX] You can fix this with ./scripts/github-remove
Modified Files:
logs/.gitignore
rrd/.gitignore
poller -m unix-agent,applications output: pastebin output
I’ve tried changing the path to bash in case that was it, but I’m not too experienced with SNMP so not sure where to begin troubleshooting this.