Windows Tips & News

Kuinka seurata USB UPS: n tilaa SNMP: n kautta

Kuinka seurata USB UPS: n tilaa SNMP: n kautta

On olemassa useita tietokoneita, joissa on USB-liitännäinen UPS. Kaikki tietokoneet käyttävät apcupsd-ohjelmaa. Oletetaan, että haluat koota yhteen paikkaan tiedot jokaisen yksikön virtalähteen tilasta. Koska snmpd on jo käynnissä siellä, olisi loogista laajentaa sen toimintoja.

Alla oleva ratkaisu Ylläpitäjän blogi, kerää tiedot kaikista snmpd-yksiköistä kerralla.

Jotta voimme valvoa USB UPS: n tilaa SNMP: n kautta, meidän on ensin muutettava snmp-daemonin konfiguraatiota.

Valmistelut

Lisää seuraavan tiedoston config snmpd.conf.

# APC UPS
läpäise .1.3.6.1.4.1.318.1.1.1 /bin/sh /etc/snmp/apcupsd.sh

Komentosarjan /etc/snmp/apcupsd.sh sisältö on seuraava.

#!/bin/sh -f # Tarkista, että apcupsd on online-tilassa. apcaccess > /dev/null 2>&1 || poistu 0 PLACE=".1.3.6.1.4.1.318.1.1.1" REQ="$2" # Pyydetty OID # # Käsittele SET-pyynnöt kirjaamalla määritetty arvo. # Huomaa, että tällaiset "määritykset" eivät ole pysyviä, # eikä syntaksia tai pyydettyä arvoa ole vahvistettu. # jos [ "$1" = "-s" ]; sitten. echo $* >> /tmp/passtest.log. poistu 0. fi # # GETNEXT-pyynnöt - määritä seuraava kelvollinen esiintymä. # jos [ "$1" = "-n" ]; sitten. tapaus "$REQ" sisään. $PAIKKA| \ $PAIKKA.0| \ $PAIKKA.0.*| \ $PAIKKA.1| \ $PAIKKA.1.1.0*) RET=$PAIKKA.1.1.1.0;; $PAIKKA.1*| \ $PAIKKA.2.0| \ $PAIKKA.2.0.*| \ $PAIKKA.2.1| \ $PAIKKA.2.2.0*) RET=$PAIKKA.2.2.1.0;; $PAIKKA.2.2.1*) RET=$PAIKKA.2.2.2.0;; $PAIKKA.2.2.2*) RET=$PAIKKA.2.2.3.0;; $PAIKKA.2.2.3*) RET=$PAIKKA.2.2.4.0;; $PAIKKA.2*| \ $PAIKKA.3.0*| \ $PAIKKA.3.1*| \ $PAIKKA.3.2.0*) RET=$PAIKKA.3.2.1.0;; $PAIKKA.3.2.1*| \ $PAIKKA.3.2.2*| \ $PAIKKA.3.2.3*) RET=$PAIKKA.3.2.4.0;; $PAIKKA.3.2.4*) RET=$PAIKKA.3.2.5.0;; $PAIKKA.3.2*| \ $PAIKKA.4.0*| \ $PAIKKA.4.1*| \ $PAIKKA.4.2.0*) RET=$PAIKKA.4.2.1.0;; $PAIKKA.4.2.1*) RET=$PAIKKA.4.2.2.0;; $PAIKKA.4.2.2*) RET=$PAIKKA.4.2.3.0;; $PAIKKA.4.2.3*) RET=$PAIKKA.4.2.4.0;; $PAIKKA.4.2.*| \ PAIKKA $.5*| \ $PAIKKA.6*| \ $PAIKKA.7,0*| \ $PAIKKA.7.1*| \ $PAIKKA.7.2.0*| \ $PAIKKA.7.2.1*| \ $PAIKKA.7.2.2*) RET=$PAIKKA.7.2.3.0;; $PAIKKA.7.2.3*) RET=$PAIKKA.7.2.4.0;; PAIKKA, 7 $*| \ $PAIKKA.8.0*) RET=$PAIKKA.8.1.0;; *) poistu 0;; esac. muu. # # GET-pyynnöt - tarkista kelvollinen esiintymä. # tapaus "$REQ" sisään. $PAIKKA.1.1.1.0| \ $PAIKKA.2.2.1.0| \ $PAIKKA.2.2.2.0| \ $PAIKKA.2.2.3.0| \ $PAIKKA.2.2.4.0| \ $PAIKKA.3.2.1.0| \ $PAIKKA.3.2.4.0| \ $PAIKKA.3.2.5.0| \ $PAIKKA.4.2.1.0| \ $PAIKKA.4.2.2.0| \ $PAIKKA.4.2.3.0| \ $PAIKKA.4.2.4.0| \ $PAIKKA.7.2.3.0| \ $PAIKKA.7.2.4.0| \ $PAIKKA.8.1.0) RET=$REQ;; *) poistu 0;; esac. fi # # "Prosessoi" GET*-pyynnöt - palauttaa koodatun arvon. # kaiku "$RET" kotelo "$RET" sisään. $PLACE.1.1.1.0) kaiku "merkkijono"; apcaccess -u -p MALLI; poistu 0;; $PLACE.2.2.1.0) echo "Gauge32"; apcaccess -u -p BCHARGE; poistu 0;; $PLACE.2.2.2.0) echo "Gauge32"; apcaccess -u -p ITEMP; poistu 0;; $PLACE.2.2.3.0) echo "Timeticks"; echo $(($(LC_ALL=C printf "%.*f" 0 $(apcaccess -u -p TIMELEFT)) * 6000)); poistu 0;; $PLACE.2.2.4.0) kaiku "merkkijono"; apcaccess -u -p BATTDATE; poistu 0;; $PLACE.3.2.1.0) echo "Gauge32"; apcaccess -u -p LINEV; poistu 0;; $PLACE.3.2.4.0) echo "Gauge32"; apcaccess -u -p LINEFREQ; poistu 0;; $PLACE.3.2.5.0) kaiku "merkkijono"; apcaccess -u -p LASTXFER; poistu 0;; $PLACE.4.2.1.0) echo "Gauge32"; apcaccess -u -p OUTPUTV; poistu 0;; $PLACE.4.2.2.0) echo "Gauge32"; apcaccess -u -p LINEFREQ; poistu 0;; $PLACE.4.2.3.0) echo "Gauge32"; apcaccess -u -p LOADPCT; poistu 0;; $PLACE.4.2.4.0) echo "Gauge32"; apcaccess -u -p LOADPCT; poistu 0;; $PLACE.7.2.3.0) kaiku "merkkijono"; apcaccess -u -p SELFTEST; poistu 0;; $PLACE.7.2.4.0) kaiku "merkkijono"; apcaccess -u -p SELFTEST; poistu 0;; $PLACE.8.1.0) echo "Gauge32"; kaiku 1; poistu 0;; *) kaiku "merkkijono"; kaiku "hyvä... $RET $REQ"; poistu 0;; # Ei pitäisi tapahtua. esac.

Jos mietit OID: itä, löydät ne TÄSSÄ. Huomaa, että jotkin UPS-mallit eivät palauta kaikkia parametreja tai ne ovat väärässä muodossa, joten koodi saattaa sisältää epätarkkuuksia ja pätkiä.

Nyt olet valmis.

Kuinka seurata USB UPS: n tilaa SNMP: n kautta

Voit seurata USB UPS: n tilaa SNMP: n kautta suorittamalla seuraavan komennon: snmpwalk -v 1 -c julkinen 127.0.0.1 .1.3.6.1.4.1.318.1.1.1. Tuloste tulee olemaan tällainen:

SNMPv2-SMI:: yritykset.318.1.1.1.1.1.1.0 = STRING: "Smart-UPS 750"
SNMPv2-SMI:: yritykset.318.1.1.1.2.2.1.0 = Mittari32: 100
SNMPv2-SMI:: yritykset.318.1.1.1.2.2.2.0 = Mittari32: 36
SNMPv2-SMI:: yritykset.318.1.1.1.2.2.3.0 = Aikataulut: (432000) 1:12:00.00
SNMPv2-SMI:: yritykset.318.1.1.1.2.2.4.0 = STRING: "2020-05-14"
SNMPv2-SMI:: yritykset.318.1.1.1.3.2.1.0 = Mittari32: 227
SNMPv2-SMI:: yritykset.318.1.1.1.3.2.4.0 = Mittari32: 50
SNMPv2-SMI:: companies.318.1.1.1.3.2.5.0 = STRING: "Automaattinen tai eksplisiittinen itsetestaus"
SNMPv2-SMI:: yritykset.318.1.1.1.4.2.1.0 = Mittari32: 227
SNMPv2-SMI:: yritykset.318.1.1.1.4.2.2.0 = Mittari32: 50
SNMPv2-SMI:: yritykset.318.1.1.1.4.2.3.0 = Mittari32: 13
SNMPv2-SMI:: yritykset.318.1.1.1.4.2.4.0 = Mittari32: 13
SNMPv2-SMI:: yritykset.318.1.1.1.7.2.3.0 = STRING: "EI"
SNMPv2-SMI:: yritykset.318.1.1.1.7.2.4.0 = STRING: "EI"
SNMPv2-SMI:: yritykset.318.1.1.1.8.1.0 = Mittari32: 1

Jos määrität valvontaskriptiä edelleen, voit saada nämä hienot kaaviot:

Lataa Winamp-skinien arkistot

Tämä verkkosivusto käyttää evästeitä parantaakseen käyttökokemustasi, kun selaat sivustoa. Näistä...

Lue lisää

Estä kirjoitus kiinteisiin asemiin, joita BitLocker ei suojaa

Estä kirjoitus kiinteisiin asemiin, joita BitLocker ei suojaa

SUOSITELTU: Napsauta tätä korjataksesi Windows-ongelmat ja optimoidaksesi järjestelmän suoritusky...

Lue lisää

Luo GUID Windows 10:ssä (maailmanlaajuisesti yksilöllinen tunniste)

Luo GUID Windows 10:ssä (maailmanlaajuisesti yksilöllinen tunniste)

GUID on 128-bittinen arvo, joka koostuu yhdestä 8 heksadesimaalinumeron ryhmästä, jota seuraa kol...

Lue lisää