Windows Tips & News

Ako monitorovať stav USB UPS cez SNMP

ODPORÚČANÉ: Kliknite sem, ak chcete opraviť problémy so systémom Windows a optimalizovať výkon systému

Ako monitorovať stav USB UPS cez SNMP

Existuje niekoľko počítačov s UPS pripojeným cez USB. Všetky počítače používajú program apcupsd. Povedzme, že chcete zhromaždiť informácie o stave napájania pre každú jednotku na jednom mieste. Keďže tam snmpd už beží, bolo by logické rozšíriť jeho funkcionalitu.

Reklama

Nižšie uvedené riešenie, s láskavým dovolením Adminov blog, bude zbierať údaje zo všetkých jednotiek snmpd naraz.

Aby sme mohli monitorovať stav USB UPS cez SNMP, musíme najprv upraviť konfiguráciu démona snmp.

Obsahskryť
Prípravky
Ako monitorovať stav USB UPS cez SNMP

Prípravky

Pridá nasledujúce do konfigurácie snmpd.conf.

# UPS APC
prejsť .1.3.6.1.4.1.318.1.1.1 /bin/sh /etc/snmp/apcupsd.sh

Obsah skriptu /etc/snmp/apcupsd.sh je nasledujúci.

#!/bin/sh -f # Skontrolujte, či je apcupsd online. apcaccess > /dev/null 2>&1 || výstup 0 PLACE=".1.3.6.1.4.1.318.1.1.1" REQ="$2" # Požadované OID # # Spracujte požiadavky SET jednoduchým zaznamenaním priradenej hodnoty. # Všimnite si, že takéto "priradenia" nie sú trvalé, # ani nie je overená syntax alebo požadovaná hodnota. # if [ "$1" = "-s" ]; potom. echo $* >> /tmp/passtest.log. výstup 0. fi # # GETNEXT requesty - určenie ďalšej platnej inštancie. # if [ "$1" = "-n" ]; potom. prípad "$REQ" v. $PLACE| \ $PLACE.0| \ $PLACE.0.*| \ $PLACE.1| \ $ MIESTO.1.1.0*) RET=$MIESTO.1.1.1.0;; $PLACE.1*| \ $PLACE.2.0| \ $PLACE.2.0.*| \ $PLACE.2.1| \ $MIESTO.2.2.0*) RET=$MIESTO.2.2.1.0;; $MIESTO.2.2.1*) RET=$MIESTO.2.2.2.0;; $MIESTO.2.2.2*) RET=$MIESTO.2.2.3.0;; $MIESTO.2.2.3*) RET=$MIESTO.2.2.4.0;; $PLACE.2*| \ $PLACE.3.0*| \ $PLACE.3.1*| \ $ MIESTO.3.2.0*) RET=$MIESTO.3.2.1.0;; $PLACE.3.2.1*| \ $PLACE.3.2.2*| \ $ MIESTO.3.2.3*) RET=$MIESTO.3.2.4.0;; $PLACE.3.2.4*) RET=$MIESTO.3.2.5.0;; $PLACE.3.2*| \ $PLACE.4.0*| \ $PLACE.4.1*| \ $ MIESTO.4.2.0*) RET=$MIESTO.4.2.1.0;; $PLACE.4.2.1*) RET=$MIESTO.4.2.2.0;; $PLACE.4.2.2*) RET=$MIESTO.4.2.3.0;; $ MIESTO.4.2.3*) RET=$MIESTO.4.2.4.0;; $PLACE.4.2.*| \ $PLACE.5*| \ $PLACE.6*| \ $PLACE.7.0*| \ $PLACE.7.1*| \ $PLACE.7.2.0*| \ $PLACE.7.2.1*| \ $MIESTO.7.2.2*) RET=$MIESTO.7.2.3.0;; $MIESTO.7.2.3*) RET=$MIESTO.7.2.4.0;; $PLACE.7*| \ $PLACE.8.0*) RET=$MIESTO.8.1.0;; *) výstup 0;; esac. inak. # # Žiadosti GET - skontrolujte platnú inštanciu. # prípad "$REQ" v. $PLACE.1.1.1.0| \ $PLACE.2.2.1.0| \ $PLACE.2.2.2.0| \ $PLACE.2.2.3.0| \ $PLACE.2.2.4.0| \ $PLACE.3.2.1.0| \ $PLACE.3.2.4.0| \ $PLACE.3.2.5.0| \ $PLACE.4.2.1.0| \ $PLACE.4.2.2.0| \ $PLACE.4.2.3.0| \ $PLACE.4.2.4.0| \ $PLACE.7.2.3.0| \ $PLACE.7.2.4.0| \ $PLACE.8.1.0) RET=$REQ;; *) výstup 0;; esac. fi # # "Spracovať" požiadavky GET* - vráti pevne zakódovanú hodnotu. # echo "$RET" prípad "$RET" v. $PLACE.1.1.1.0) echo "reťazec"; apcaccess -u -p MODEL; výstup 0;; $PLACE.2.2.1.0) echo "Gauge32"; apcaccess -u -p BCHARGE; výstup 0;; $PLACE.2.2.2.0) echo "Gauge32"; apcaccess -u -p POLOŽKA; výstup 0;; $PLACE.2.2.3.0) echo "Timeticks"; echo $(($(LC_ALL=C printf "%.*f" 0 $(apcaccess -u -p TIMELEFT)) * 6000)); výstup 0;; $PLACE.2.2.4.0) echo "reťazec"; apcaccess -u -p BATTDATE; výstup 0;; $PLACE.3.2.1.0) echo "Gauge32"; apcaccess -u -p LINEV; výstup 0;; $PLACE.3.2.4.0) echo "Gauge32"; apcaccess -u -p LINEFREQ; výstup 0;; $PLACE.3.2.5.0) echo "reťazec"; apcaccess -u -p LASTXFER; výstup 0;; $PLACE.4.2.1.0) echo "Gauge32"; apcaccess -u -p OUTPUTV; výstup 0;; $PLACE.4.2.2.0) echo "Gauge32"; apcaccess -u -p LINEFREQ; výstup 0;; $PLACE.4.2.3.0) echo "Gauge32"; apcaccess -u -p LOADPCT; výstup 0;; $PLACE.4.2.4.0) echo "Gauge32"; apcaccess -u -p LOADPCT; výstup 0;; $PLACE.7.2.3.0) echo "reťazec"; apcaccess -u -p SELFTEST; výstup 0;; $PLACE.7.2.4.0) echo "reťazec"; apcaccess -u -p SELFTEST; výstup 0;; $PLACE.8.1.0) echo "Gauge32"; ozvena 1; výstup 0;; *) echo "reťazec"; echo "Potvrdiť... $RET $REQ"; výstup 0;; # Nemalo by sa to stať. esac.

Ak vás zaujímajú OID, môžete ich nájsť TU. Upozorňujeme, že niektoré modely UPS nevracajú všetky parametre alebo v nesprávnom formáte, takže kód môže obsahovať nepresnosti a útržky.

Teraz ste pripravení.

Ako monitorovať stav USB UPS cez SNMP

Ak chcete monitorovať stav USB UPS cez SNMP, spustite nasledujúci príkaz: snmpwalk -v 1 -c public 127.0.0.1 .1.3.6.1.4.1.318.1.1.1. Výstup bude takýto:

SNMPv2-SMI:: enterprises.318.1.1.1.1.1.1.0 = STRING: "Smart-UPS 750 "
SNMPv2-SMI:: podniky.318.1.1.1.2.2.1.0 = Gauge32: 100
SNMPv2-SMI:: podniky.318.1.1.1.2.2.2.0 = Gauge32: 36
SNMPv2-SMI:: podniky.318.1.1.1.2.2.3.0 = Timeticks: (432000) 1:12:00.00
SNMPv2-SMI:: podniky.318.1.1.1.2.2.4.0 = STRING: "2020-05-14"
SNMPv2-SMI:: podniky.318.1.1.1.3.2.1.0 = Gauge32: 227
SNMPv2-SMI:: podniky.318.1.1.1.3.2.4.0 = Gauge32: 50
SNMPv2-SMI:: enterprises.318.1.1.1.3.2.5.0 = STRING: "Automatický alebo explicitný autotest"
SNMPv2-SMI:: podniky.318.1.1.1.4.2.1.0 = Gauge32: 227
SNMPv2-SMI:: podniky.318.1.1.1.4.2.2.0 = Gauge32: 50
SNMPv2-SMI:: podniky.318.1.1.1.4.2.3.0 = Gauge32: 13
SNMPv2-SMI:: podniky.318.1.1.1.4.2.4.0 = Gauge32: 13
SNMPv2-SMI:: podniky.318.1.1.1.7.2.3.0 = STRING: "NIE"
SNMPv2-SMI:: podniky.318.1.1.1.7.2.4.0 = STRING: "NIE"
SNMPv2-SMI:: podniky.318.1.1.1.8.1.0 = Gauge32: 1

Ak ďalej konfigurujete monitorovací skript, môžete získať tieto šikovné grafy:

NahraťNapätieTeplota batérieBeh programu
ODPORÚČANÉ: Kliknite sem, ak chcete opraviť problémy so systémom Windows a optimalizovať výkon systému

Stiahnuť Stiahnuť Industrial_Sickness Skin for Winamp

Táto webová stránka používa súbory cookie na zlepšenie vášho zážitku pri prechádzaní webom. Z týc...

Čítaj viac

Stiahnuť Stiahnite si McDs_Modern_Mix Skin pre Winamp

Táto webová stránka používa súbory cookie na zlepšenie vášho zážitku pri prechádzaní webom. Z týc...

Čítaj viac

Stiahnuť Stiahnite si Lineage2 Skin pre Winamp

Táto webová stránka používa súbory cookie na zlepšenie vášho zážitku pri prechádzaní webom. Z týc...

Čítaj viac