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

Archív utorkových opráv pre Windows 10

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

Windows 10 20H2 Build 19042.541 (KB4577063) je dostupný v kanáloch Beta a Release Preview

Windows 10 20H2 Build 19042.541 (KB4577063) je dostupný v kanáloch Beta a Release Preview

Spoločnosť Microsoft v súčasnosti vydáva zostavu 19042.541 (KB4577063) pre Windows Insider v kaná...

Čítaj viac

Ako odstrániť XPS Document Writer v systéme Windows 10

Ako odstrániť XPS Document Writer v systéme Windows 10

XPS je formát súboru založený na XML navrhnutý na tlač obsahu na obrazovke pri zachovaní vernosti...

Čítaj viac