[Nut-upsdev] Snmp-ups/netvision driver for Socomec UPS
Arnaud Quette
aquette.dev at gmail.com
Tue Apr 24 13:59:18 UTC 2012
2012/4/16 Ivan Kuznetsov <kia at solvo.ru>
> Hello
>
Hello Ivan,
> We have an Socomec Sicon Netys PR3000 UPS equipped with NetVision Web/SNMP
> adaptor. I try to monitor the ups using snmp-ups driver and netvision mibs
> set. The snmp-ups driver starts correctly and connects to the UPS, upsd
> confirms it, but upsmon constantly shows "No communication" error
>
> I think the cause is the SNMP adapter reports the UPS status as "ECO mode"
> (snmpget .1.3.6.1.4.1.4555.1.1.1.1.4.1.**0 returns 9), but snmp-ups does
> not correctly process this. Here is output of 'snmp-ups -a socomec -u nut
> -D':
>
> Network UPS Tools - Generic SNMP UPS driver 0.50 (2.6.1)
> 0.000000 debug level is '1'
> 0.000260 SNMP UPS driver : entering upsdrv_initups()
> 0.027868 load_mib2nut: trying netvision mib
> 0.029798 load_mib2nut: using netvision mib
> 0.031731 Detected NETYS 3 kVA on host 192.168.0.227 (mib: netvision
> 0.1)
> 0.031751 SNMP UPS driver : entering upsdrv_initinfo()
> 0.031785 getting data: ups.mfr (.1.3.6.1.4.1.4555.1.1.1.1.1.**3.0)
> 0.033823 entering su_setinfo(ups.mfr)
> 0.033836 getting data: ups.model (.1.3.6.1.4.1.4555.1.1.1.1.1.**1.0)
> 0.035731 entering su_setinfo(ups.model)
> 0.035744 getting data: ups.serial (.1.3.6.1.4.1.4555.1.1.1.1.1.**
> 4.0)
> 0.037646 entering su_setinfo(ups.serial)
> 0.037662 getting data: ups.firmware.aux (.1.3.6.1.4.1.4555.1.1.1.1.1.
> **2.0)
> 0.039497 entering su_setinfo(ups.firmware.aux)
> 0.039512 getting data: ups.status (.1.3.6.1.4.1.4555.1.1.1.1.2.**
> 1.0)
> 0.041373 su_find_infoval: found (value: 2)
> 0.041383 getting data: ups.status (.1.3.6.1.4.1.4555.1.1.1.1.4.**
> 1.0)
> 0.043248 su_find_infoval: found (value: 9)
> 0.043258 getting data: ups.load (.1.3.6.1.4.1.4555.1.1.1.1.4.**
> 4.1.4.1)
> 0.045975 entering su_setinfo(ups.load)
> 0.045987 getting data: input.voltage (.1.3.6.1.4.1.4555.1.1.1.1.3.**
> 3.1.5.1)
> 0.047973 entering su_setinfo(input.voltage)
> 0.047984 getting data: output.voltage (.1.3.6.1.4.1.4555.1.1.1.1.4.*
> *4.1.2.1)
> 0.050015 entering su_setinfo(output.voltage)
> 0.050026 getting data: output.current (.1.3.6.1.4.1.4555.1.1.1.1.4.*
> *4.1.3.1)
> 0.052065 entering su_setinfo(output.current)
> 0.052076 getting data: battery.charge (.1.3.6.1.4.1.4555.1.1.1.1.2.*
> *4.0)
> 0.053919 entering su_setinfo(battery.charge)
> 0.053930 getting data: battery.voltage (.1.3.6.1.4.1.4555.1.1.1.1.2.
> **5.0)
> 0.055797 entering su_setinfo(battery.voltage)
> 0.055807 getting data: battery.runtime (.1.3.6.1.4.1.4555.1.1.1.1.2.
> **3.0)
> 0.057690 entering su_setinfo(battery.runtime)
> 0.057701 SNMP UPS driver : entering upsdrv_updateinfo()
> 0.057712 getting data: ups.status (.1.3.6.1.4.1.4555.1.1.1.1.2.**
> 1.0)
> 0.059597 su_find_infoval: found (value: 2)
> 0.059606 getting data: ups.status (.1.3.6.1.4.1.4555.1.1.1.1.4.**
> 1.0)
> 0.061446 su_find_infoval: found (value: 9)
> 0.061455 getting data: ups.load (.1.3.6.1.4.1.4555.1.1.1.1.4.**
> 4.1.4.1)
> 0.063468 entering su_setinfo(ups.load)
> 0.063478 getting data: input.voltage (.1.3.6.1.4.1.4555.1.1.1.1.3.**
> 3.1.5.1)
> 0.065502 entering su_setinfo(input.voltage)
> 0.065515 getting data: output.voltage (.1.3.6.1.4.1.4555.1.1.1.1.4.*
> *4.1.2.1)
> 0.067566 entering su_setinfo(output.voltage)
> 0.067576 getting data: output.current (.1.3.6.1.4.1.4555.1.1.1.1.4.*
> *4.1.3.1)
> 0.069588 entering su_setinfo(output.current)
> 0.069598 getting data: battery.charge (.1.3.6.1.4.1.4555.1.1.1.1.2.*
> *4.0)
> 0.071446 entering su_setinfo(battery.charge)
> 0.071456 getting data: battery.voltage (.1.3.6.1.4.1.4555.1.1.1.1.2.
> **5.0)
> 0.073318 entering su_setinfo(battery.voltage)
> 0.073328 getting data: battery.runtime (.1.3.6.1.4.1.4555.1.1.1.1.2.
> **3.0)
> 0.075173 entering su_setinfo(battery.runtime)
> 0.075234 SNMP UPS driver : entering upsdrv_updateinfo()
>
> And 'upsmon -u nut -DDD' output:
>
> Network UPS Tools upsmon 2.6.1
> 0.000000 UPS: socomec at localhost (master) (power value 1)
> 0.000090 Using power down flag file /etc/killpower
> 0.000213 debug level is '3'
> 0.000705 Trying to connect to UPS [socomec at localhost]
> 0.001065 Logged into UPS socomec at localhost
> 0.001127 pollups: socomec at localhost
> 0.001137 get_var: socomec at localhost / status
> 0.001186 parse_status: []
> 0.001209 do_notify: ntype 0x0005 (COMMBAD)
> 0.001220 Communication with the UPS is lost
>
> In netvision-mib.c I see that ups.status field is constructed from
> NETVISION_OID_BATTERYSTATUS (.1.3.6.1.4.1.4555.1.1.1.1.2.**1.0) and
> NETVISION_OID_OUTPUT_SOURCE (.1.3.6.1.4.1.4555.1.1.1.1.4.**1.0).
>
> Battery status is normal (value 2), value for netvision_batt_info is ""
> (empty string). Good.
> Output status has value 9, netvision_output_info is empty string too.
> Looks false because the UPS is on and works in high-efficiency UPS mode.
> The result is that ups.status get an empty string value, which confuses
> upsmon.
>
agreed.
in the same spirit, "Output status==8" should probably be processed as "OL"
too.
can you please confirm the attached patch, before I commit it?
cheers,
Arnaud
--
Linux / Unix Expert R&D - Eaton - http://powerquality.eaton.com
Network UPS Tools (NUT) Project Leader - http://www.networkupstools.org/
Debian Developer - http://www.debian.org
Free Software Developer - http://arnaud.quette.free.fr/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/nut-upsdev/attachments/20120424/4aa8d2bf/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: netvision-mib-1.diff
Type: application/octet-stream
Size: 553 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/nut-upsdev/attachments/20120424/4aa8d2bf/attachment-0001.obj>
More information about the Nut-upsdev
mailing list