Windows Tips & News

Jak sledovat stav USB UPS přes SNMP

DOPORUČUJEME: Kliknutím sem opravíte problémy se systémem Windows a optimalizujete výkon systému

Jak sledovat stav USB UPS přes SNMP

Existuje několik počítačů s UPS připojenými přes USB. Všechny počítače používají program apcupsd. Řekněme, že chcete shromáždit informace o stavu napájení pro každou jednotku na jednom místě. Protože tam snmpd již běží, bylo by logické rozšířit jeho funkcionalitu.

reklama

Níže uvedené řešení, s laskavým svolením Adminův blog, bude shromažďovat data ze všech jednotek snmpd najednou.

Aby bylo možné sledovat stav USB UPS přes SNMP, musíme nejprve upravit konfiguraci démona snmp.

Obsahskrýt
Přípravky
Jak sledovat stav USB UPS přes SNMP

Přípravky

Přidá následující do souboru config snmpd.conf.

# UPS APC
projít .1.3.6.1.4.1.318.1.1.1 /bin/sh /etc/snmp/apcupsd.sh

Obsah skriptu /etc/snmp/apcupsd.sh je následující.

#!/bin/sh -f # Zkontrolujte, zda je apcupsd online. apcaccess > /dev/null 2>&1 || exit 0 PLACE=".1.3.6.1.4.1.318.1.1.1" REQ="$2" # Požadované OID # # Zpracujte požadavky SET jednoduchým protokolováním přiřazené hodnoty. # Všimněte si, že taková "přiřazení" nejsou trvalá, # ani není ověřena syntaxe nebo požadovaná hodnota. # if [ "$1" = "-s" ]; pak. echo $* >> /tmp/passtest.log. výstup 0. fi # # GETNEXT požadavky - určení další platné instance. # if [ "$1" = "-n" ]; pak. případ "$REQ" v. $PLACE| \ $PLACE.0| \ $PLACE.0.*| \ $PLACE.1| \ $MÍSTO.1.1.0*) RET=$MÍSTO.1.1.1.0;; $PLACE.1*| \ $PLACE.2.0| \ $PLACE.2.0.*| \ $PLACE.2.1| \ $PLACE.2.2.0*) RET=$MÍSTO.2.2.1.0;; $PLACE.2.2.1*) RET=$MÍSTO.2.2.2.0;; $MÍSTO.2.2.2*) RET=$MÍSTO.2.2.3.0;; $PLACE.2.2.3*) RET=$MÍSTO.2.2.4.0;; $PLACE.2*| \ $PLACE.3.0*| \ $PLACE.3.1*| \ $PLACE.3.2.0*) RET=$MÍSTO.3.2.1.0;; $PLACE.3.2.1*| \ $PLACE.3.2.2*| \ $PLACE.3.2.3*) RET=$MÍSTO.3.2.4.0;; $PLACE.3.2.4*) RET=$MÍSTO.3.2.5.0;; $PLACE.3.2*| \ $PLACE.4.0*| \ $PLACE.4.1*| \ $PLACE.4.2.0*) RET=$MÍSTO.4.2.1.0;; $PLACE.4.2.1*) RET=$MÍSTO.4.2.2.0;; $MÍSTO.4.2.2*) RET=$MÍSTO.4.2.3.0;; $PLACE.4.2.3*) RET=$MÍSTO.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*| \ $MÍSTO.7.2.2*) RET=$MÍSTO.7.2.3.0;; $MÍSTO.7.2.3*) RET=$MÍSTO.7.2.4.0;; $PLACE.7*| \ $PLACE.8.0*) RET=$MÍSTO.8.1.0;; *) exit 0;; esac. jiný. # # Požadavky GET - zkontrolujte platnou instanci. # pří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;; *) exit 0;; esac. fi # # "Zpracovat" požadavky GET* - vrátí pevně zakódovanou hodnotu. # echo "$RET" případ "$RET" v. $PLACE.1.1.1.0) echo "řetězec"; 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 "řetězec"; 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 "řetězec"; 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 "řetězec"; apcaccess -u -p SELFTEST; výstup 0;; $PLACE.7.2.4.0) echo "řetězec"; apcaccess -u -p SELFTEST; výstup 0;; $PLACE.8.1.0) echo "Gauge32"; echo 1; výstup 0;; *) echo "řetězec"; echo "potvrzuji... $RET $REQ"; výstup 0;; # Nemělo by se to stát. esac.

Pokud se zajímáte o OID, můžete je najít TADY. Upozorňujeme, že některé modely UPS nevracejí všechny parametry nebo v nesprávném formátu, takže kód může obsahovat nepřesnosti a útržky.

Nyní jste připraveni.

Jak sledovat stav USB UPS přes SNMP

Chcete-li sledovat stav USB UPS přes SNMP, spusťte následující příkaz: snmpwalk -v 1 -c public 127.0.0.1 .1.3.6.1.4.1.318.1.1.1. Výstup bude takový:

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:: enterprises.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ý nebo 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:: enterprises.318.1.1.1.7.2.3.0 = STRING: "NE"
SNMPv2-SMI:: enterprises.318.1.1.1.7.2.4.0 = STRING: "NE"
SNMPv2-SMI:: enterprises.318.1.1.1.8.1.0 = Gauge32: 1

Pokud dále konfigurujete monitorovací skript, můžete získat tyto šikovné grafy:

NahrátNapětíTeplota baterieDoba běhu
DOPORUČUJEME: Kliknutím sem opravíte problémy se systémem Windows a optimalizujete výkon systému
Přidejte zařízení a tiskárny do tohoto počítače v systému Windows 10

Přidejte zařízení a tiskárny do tohoto počítače v systému Windows 10

DOPORUČUJEME: Kliknutím sem opravíte problémy se systémem Windows a optimalizujete výkon systémuZ...

Přečtěte si více

Získejte náhledy všech možných formátů obrázků a videí ve složkách Průzkumníka

Získejte náhledy všech možných formátů obrázků a videí ve složkách Průzkumníka

Windows podporuje zobrazení běžně používaných formátů obrázků a videa jako miniatur ve složkách P...

Přečtěte si více

Microsoft zavedl Windows 10 Fall Update Threshold 2

Microsoft zavedl Windows 10 Fall Update Threshold 2

DOPORUČUJEME: Kliknutím sem opravíte problémy se systémem Windows a optimalizujete výkon systémuM...

Přečtěte si více