NAME check_ups_legrand.py - perform snmp query on a Legrand UPS APPLICATION REQUIREMENTS Python net-snmp library net-snmp net-snmp-utils net-snmp-python USAGE check_ups_legrand.py -H ipaddress -U snmpV3_user -A snmpV3_authKey -T test [-w threshold -c threshold] REQUIRED ARGUMENTS -H Ipaddress of the ups -U SnmpV3 user -A SnmpV3 authorization key -T Type of test [-w threshold] [-c threshold] EXAMPLES check_ups_legrand.py -H x.x.x.x -U snmp -A password -T ut Test: # ii -> genric information of the device (Manufaturer, Model, Sw version), always OK check_ups_legrand.py -H x.x.x.x -U snmp -A password -T ii # bs -> Battery Status: check operativity of the battery; Normal -> OK , Low -> WARN , Depleted -> CRIT , Unknown -> UNK check_ups_legrand.py -H x.x.x.x -U snmp -A password -T bs # ob -> Check seconds On Battery of the ups, alert if the value is over the threshold check_ups_legrand.py -H x.x.x.x -U snmp -A password -T ob -w 60 -c 100 # bm -> Estimated Battery Minutes remain, alert if the value is under the threshold check_ups_legrand.py -H x.x.x.x -U snmp -A password -T bm -w 1000 -c 800 # pb -> Percentage charge of the Battery, alert if the value is under the threshold check_ups_legrand.py -H x.x.x.x -U snmp -A password -T pb -w 90 -c 50 # bt -> Battery Temperature, alert if the value is over the threshold check_ups_legrand.py -H x.x.x.x -U snmp -A password -T bt -w 30 -c 35 # ua -> Ups generic Alarm, critical if found any messages check_ups_legrand.py -H x.x.x.x -U snmp -A password -T ua # ut -> Ups Test result, critical if last test completed with error check_ups_legrand.py -H x.x.x.x -U snmp -A password -T ua BUGS, LIMITATIONS, INCOMPATIBILITES Authentication works only in smb v3 Authentication. For work on the Ups the parameters must be: SecLevel = "authNoPriv" AuthProto = "MD5" PrivProto = "DES" example Command configuration: ############### # UPS LEGRAND # ############### define command{ command_name check_ups_legrand_info command_line $USER1$/check_ups_legrand.py -H $HOSTADDRESS$ -U "$ARG1$" -A "$ARG2$" -T "ii" } define command{ command_name check_ups_legrand_bs command_line $USER1$/check_ups_legrand.py -H $HOSTADDRESS$ -U "$ARG1$" -A "$ARG2$" -T "bs" } define command{ command_name check_ups_legrand_ob command_line $USER1$/check_ups_legrand.py -H $HOSTADDRESS$ -U "$ARG1$" -A "$ARG2$" -T "ob" -w $ARG3$ -c $ARG4$ } define command{ command_name check_ups_legrand_bm command_line $USER1$/check_ups_legrand.py -H $HOSTADDRESS$ -U "$ARG1$" -A "$ARG2$" -T "bm" -w $ARG3$ -c $ARG4$ } define command{ command_name check_ups_legrand_pb command_line $USER1$/check_ups_legrand.py -H $HOSTADDRESS$ -U "$ARG1$" -A "$ARG2$" -T "pb" -w $ARG3$ -c $ARG4$ } define command{ command_name check_ups_legrand_bt command_line $USER1$/check_ups_legrand.py -H $HOSTADDRESS$ -U "$ARG1$" -A "$ARG2$" -T "bt" -w $ARG3$ -c $ARG4$ } define command{ command_name check_ups_legrand_ua command_line $USER1$/check_ups_legrand.py -H $HOSTADDRESS$ -U "$ARG1$" -A "$ARG2$" -T "ua" } define command{ command_name check_ups_legrand_ut command_line $USER1$/check_ups_legrand.py -H $HOSTADDRESS$ -U "$ARG1$" -A "$ARG2$" -T "ut" } This module is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License. See L. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.