Windows Tips & News

Kako pratiti status USB UPS-a putem SNMP-a

Kako pratiti status USB UPS-a putem SNMP-a

Postoji nekoliko računala s USB povezanim UPS-om. Sva računala koriste program apcupsd. Recimo da želite prikupiti informacije o stanju napajanja za svaku jedinicu na jednom mjestu. Budući da snmpd tamo već radi, logično bi bilo proširiti njegovu funkcionalnost.

Rješenje u nastavku, ljubaznošću Adminov blog, prikupit će podatke sa svih snmpd jedinica odjednom.

Kako bismo pratili status USB UPS-a putem SNMP-a, prvo moramo izmijeniti konfiguraciju snmp demona.

Pripreme

Dodaje sljedeće u konfiguraciju snmpd.conf.

# APC UPS
pass .1.3.6.1.4.1.318.1.1.1 /bin/sh /etc/snmp/apcupsd.sh

Sadržaj skripte /etc/snmp/apcupsd.sh je sljedeći.

#!/bin/sh -f # Provjerite je li apcupsd online. apcaccess > /dev/null 2>&1 || izlaz 0 PLACE=".1.3.6.1.4.1.318.1.1.1" REQ="$2" # Zatraženi OID # # Obradite SET zahtjeve jednostavnim bilježenjem dodijeljene vrijednosti. # Imajte na umu da takvi "dodjela" nisu trajni, # niti je sintaksa ili tražena vrijednost provjerena. # if [ "$1" = "-s" ]; zatim. echo $* >> /tmp/passtest.log. izlaz 0. fi # # GETNEXT zahtjevi - odredite sljedeću valjanu instancu. # if [ "$1" = "-n" ]; zatim. slučaj "$REQ" u. $PLACE| \ $PLACE.0| \ $PLACE.0.*| \ $PLACE.1| \ $PLACE.1.1.0*) RET=$PLACE.1.1.1.0;; $PLACE.1*| \ $PLACE.2.0| \ $PLACE.2.0.*| \ $PLACE.2.1| \ $PLACE.2.2.0*) RET=$PLACE.2.2.1.0;; $PLACE.2.2.1*) RET=$PLACE.2.2.2.0;; $PLACE.2.2.2*) RET=$PLACE.2.2.3.0;; $PLACE.2.2.3*) RET=$PLACE.2.2.4.0;; $MJESTO.2*| \ $PLACE.3.0*| \ $PLACE.3.1*| \ $PLACE.3.2.0*) RET=$PLACE.3.2.1.0;; $PLACE.3.2.1*| \ $PLACE.3.2.2*| \ $PLACE.3.2.3*) RET=$PLACE.3.2.4.0;; $PLACE.3.2.4*) RET=$PLACE.3.2.5.0;; $PLACE.3.2*| \ $PLACE.4.0*| \ $PLACE.4.1*| \ $PLACE.4.2.0*) RET=$PLACE.4.2.1.0;; $PLACE.4.2.1*) RET=$PLACE.4.2.2.0;; $PLACE.4.2.2*) RET=$PLACE.4.2.3.0;; $PLACE.4.2.3*) RET=$PLACE.4.2.4.0;; $PLACE.4.2.*| \ $MJESTO.5*| \ $MJESTO.6*| \ $PLACE.7.0*| \ $PLACE.7.1*| \ $PLACE.7.2.0*| \ $PLACE.7.2.1*| \ $PLACE.7.2.2*) RET=$PLACE.7.2.3.0;; $PLACE.7.2.3*) RET=$PLACE.7.2.4.0;; $MJESTO.7*| \ $PLACE.8.0*) RET=$PLACE.8.1.0;; *) izlaz 0;; esac. drugo. # # GET zahtjevi - provjerite valjanu instancu. # slučaj "$REQ" u. $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;; *) izlaz 0;; esac. fi # # "Obradi" GET* zahtjeve - vrati tvrdo kodiranu vrijednost. # odjek "$RET" slučaj "$RET" u. $PLACE.1.1.1.0) echo "string"; apcaccess -u -p MODEL; izlaz 0;; $PLACE.2.2.1.0) echo "Gauge32"; apcaccess -u -p NAPUNJAVANJE; izlaz 0;; $PLACE.2.2.2.0) echo "Gauge32"; apcaccess -u -p ITEMP; izlaz 0;; $PLACE.2.2.3.0) echo "Timeticks"; echo $(($(LC_ALL=C printf "%.*f" 0 $(apcaccess -u -p TIMELEFT)) * 6000)); izlaz 0;; $PLACE.2.2.4.0) echo "string"; apcaccess -u -p BATTDATE; izlaz 0;; $PLACE.3.2.1.0) echo "Gauge32"; apcaccess -u -p LINEV; izlaz 0;; $PLACE.3.2.4.0) echo "Gauge32"; apcaccess -u -p LINEFREQ; izlaz 0;; $PLACE.3.2.5.0) echo "string"; apcaccess -u -p LASTXFER; izlaz 0;; $PLACE.4.2.1.0) echo "Gauge32"; apcaccess -u -p IZLAZNI TV; izlaz 0;; $PLACE.4.2.2.0) echo "Gauge32"; apcaccess -u -p LINEFREQ; izlaz 0;; $PLACE.4.2.3.0) echo "Gauge32"; apcaccess -u -p LOADPCT; izlaz 0;; $PLACE.4.2.4.0) echo "Gauge32"; apcaccess -u -p LOADPCT; izlaz 0;; $PLACE.7.2.3.0) echo "string"; apcaccess -u -p SAMOTESTIRANJE; izlaz 0;; $PLACE.7.2.4.0) echo "string"; apcaccess -u -p SAMOTESTIRANJE; izlaz 0;; $PLACE.8.1.0) echo "Gauge32"; odjek 1; izlaz 0;; *) echo "string"; echo "potvrdi... $RET $REQ"; izlaz 0;; # Ne bi se trebalo dogoditi. esac.

Ako se pitate o OID-ovima, možete ih pronaći OVDJE. Imajte na umu da neki modeli UPS-a ne vraćaju sve parametre ili su u pogrešnom formatu, tako da kod može sadržavati netočnosti i nedostatke.

Sada ste spremni.

Kako pratiti status USB UPS-a putem SNMP-a

Za praćenje statusa USB UPS-a putem SNMP-a, pokrenite sljedeću naredbu: snmpwalk -v 1 -c javni 127.0.0.1 .1.3.6.1.4.1.318.1.1.1. Izlaz će biti ovakav:

SNMPv2-SMI:: enterprises.318.1.1.1.1.1.1.0 = STRING: "Smart-UPS 750"
SNMPv2-SMI:: poduzeća.318.1.1.1.2.2.1.0 = Gauge32: 100
SNMPv2-SMI:: poduzeća.318.1.1.1.2.2.2.0 = Gauge32: 36
SNMPv2-SMI:: enterprises.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:: poduzeća.318.1.1.1.3.2.1.0 = Gauge32: 227
SNMPv2-SMI:: poduzeća.318.1.1.1.3.2.4.0 = Gauge32: 50
SNMPv2-SMI:: enterprises.318.1.1.1.3.2.5.0 = STRING: "Automatsko ili eksplicitno samotestiranje"
SNMPv2-SMI:: poduzeća.318.1.1.1.4.2.1.0 = Gauge32: 227
SNMPv2-SMI:: poduzeća.318.1.1.1.4.2.2.0 = Gauge32: 50
SNMPv2-SMI:: poduzeća.318.1.1.1.4.2.3.0 = Gauge32: 13
SNMPv2-SMI:: poduzeća.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:: poduzeća.318.1.1.1.8.1.0 = Gauge32: 1

Ako dodatno konfigurirate skriptu za praćenje, možete dobiti ove zgodne grafikone:

Windows 10 Build 19041.84 (KB4539080, Sporo zvono)

Windows 10 Build 19041.84 (KB4539080, Sporo zvono)

1 odgovorMicrosoft objavljuje novo ažuriranje za Insiders in the Slow Ring. Zgrada 19041.84 izašl...

Čitaj više

Izašao je Vivaldi 1.15, evo svega što trebate znati

Izašao je Vivaldi 1.15, evo svega što trebate znati

Evo sjajne vijesti za sve korisnike Vivaldija. Najinovativniji od svih modernih preglednika danas...

Čitaj više

Kako onemogućiti najbolja sponzorirana mjesta u Mozilla Firefoxu

Kako onemogućiti najbolja sponzorirana mjesta u Mozilla Firefoxu

Kako onemogućiti najbolja sponzorirana mjesta u web pregledniku Mozilla FirefoxZa neke korisnike,...

Čitaj više