Windows Tips & News

So überwachen Sie den Status der USB-USV über SNMP

So überwachen Sie den Status der USB-USV über SNMP

Es gibt mehrere Computer mit USB-verbundener USV. Alle Computer verwenden das Programm apcupsd. Angenommen, Sie möchten Informationen über den Zustand der Stromversorgung für jedes Gerät an einem Ort zusammenfassen. Da snmpd dort bereits läuft, wäre es logisch, seine Funktionalität zu erweitern.

Die unten stehende Lösung, mit freundlicher Genehmigung der Admin-Blog, sammelt die Daten von allen snmpd-Einheiten gleichzeitig.

Um den Status der USB-USV über SNMP zu überwachen, müssen wir zuerst die SNMP-Daemon-Konfiguration ändern.

Vorbereitungen

Fügt der config snmpd.conf Folgendes hinzu.

# APC-USV
pass .1.3.6.1.4.1.318.1.1.1 /bin/sh /etc/snmp/apcupsd.sh

Der Inhalt des Skripts /etc/snmp/apcupsd.sh ist wie folgt.

#!/bin/sh -f # Überprüfen Sie, ob appcupsd online ist. apcaccess > /dev/null 2>&1 || Ausgang 0 PLACE=".1.3.6.1.4.1.318.1.1.1" REQ="$2" # Angeforderte OID # # SET-Anfragen verarbeiten, indem einfach der zugewiesene Wert protokolliert wird. # Beachten Sie, dass solche "Zuweisungen" weder beständig sind, # noch die Syntax oder der angeforderte Wert validiert werden. # if [ "$1" = "-s" ]; dann. echo $* >> /tmp/passtest.log. Ausgang 0. fi # # GETNEXT-Anfragen - bestimmt die nächste gültige Instanz. # if [ "$1" = "-n" ]; dann. Fall "$REQ" in. $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;; $PLACE.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.*| \ $PLACE.5*| \ $PLACE.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;; $PLACE.7*| \ $PLACE.8.0*) RET=$PLACE.8.1.0;; *) Ausgang 0;; esac. anders. # # GET-Anfragen - auf gültige Instanz prüfen. # Fall "$REQ" in. $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;; *) Ausgang 0;; esac. fi # # GET*-Anforderungen "verarbeiten" - hartcodierten Wert zurückgeben. # echo "$RET" Fall "$RET" in. $PLACE.1.1.1.0) echo "Zeichenfolge"; apcaccess -u -p MODELL; Ausgang 0;; $PLACE.2.2.1.0) echo "Gauge32"; apcaccess -u -p BCHARGE; Ausgang 0;; $PLACE.2.2.2.0) echo "Gauge32"; apcaccess -u -p ITEMP; Ausgang 0;; $PLACE.2.2.3.0) echo "Timeticks"; echo $(($(LC_ALL=C printf "%.*f" 0 $(apcaccess -u -p TIMELEFT)) * 6000)); Ausgang 0;; $PLACE.2.2.4.0) echo "Zeichenfolge"; apcaccess -u -p BATTDATE; Ausgang 0;; $PLACE.3.2.1.0) echo "Gauge32"; apcaccess -u -p LINEV; Ausgang 0;; $PLACE.3.2.4.0) echo "Gauge32"; apcaccess -u -p LINEFREQ; Ausgang 0;; $PLACE.3.2.5.0) echo "Zeichenfolge"; apcaccess -u -p LASTXFER; Ausgang 0;; $PLACE.4.2.1.0) echo "Gauge32"; apcaccess -u -p AUSGABETV; Ausgang 0;; $PLACE.4.2.2.0) echo "Gauge32"; apcaccess -u -p LINEFREQ; Ausgang 0;; $PLACE.4.2.3.0) echo "Gauge32"; apcaccess -u -p LOADPCT; Ausgang 0;; $PLACE.4.2.4.0) echo "Gauge32"; apcaccess -u -p LOADPCT; Ausgang 0;; $PLACE.7.2.3.0) echo "Zeichenfolge"; apcaccess -u -p SELBSTTEST; Ausgang 0;; $PLACE.7.2.4.0) echo "Zeichenfolge"; apcaccess -u -p SELBSTTEST; Ausgang 0;; $PLACE.8.1.0) echo "Gauge32"; Echo 1; Ausgang 0;; *) echo "Zeichenfolge"; echo "ack... $RET $REQ"; Ausgang 0;; # Sollte nicht passieren. esac.

Wenn Sie sich über OIDs wundern, können Sie sie finden HIER. Beachten Sie, dass einige USV-Modelle nicht alle Parameter oder im falschen Format zurückgeben, sodass der Code Ungenauigkeiten und Stubs enthalten kann.

Jetzt sind Sie bereit.

So überwachen Sie den Status der USB-USV über SNMP

Führen Sie den folgenden Befehl aus, um den Status der USB-USV über SNMP zu überwachen: snmpwalk -v 1 -c öffentlich 127.0.0.1 .1.3.6.1.4.1.318.1.1.1. Die Ausgabe wird so aussehen:

SNMPv2-SMI:: enterprise.318.1.1.1.1.1.1.0 = STRING: "Smart-UPS 750"
SNMPv2-SMI:: enterprise.318.1.1.1.2.2.1.0 = Gauge32: 100
SNMPv2-SMI:: enterprise.318.1.1.1.2.2.2.0 = Gauge32: 36
SNMPv2-SMI:: enterprise.318.1.1.1.2.2.3.0 = Timeticks: (432000) 1:12:00.00
SNMPv2-SMI:: enterprise.318.1.1.1.2.2.4.0 = STRING: "2020-05-14"
SNMPv2-SMI:: Unternehmen.318.1.1.1.3.2.1.0 = Gauge32: 227
SNMPv2-SMI:: Unternehmen.318.1.1.1.3.2.4.0 = Gauge32: 50
SNMPv2-SMI:: enterprise.318.1.1.1.3.2.5.0 = STRING: "Automatischer oder expliziter Selbsttest"
SNMPv2-SMI:: Unternehmen.318.1.1.1.4.2.1.0 = Gauge32: 227
SNMPv2-SMI:: Unternehmen.318.1.1.1.4.2.2.0 = Gauge32: 50
SNMPv2-SMI:: Unternehmen.318.1.1.1.4.2.3.0 = Gauge32: 13
SNMPv2-SMI:: Unternehmen.318.1.1.1.4.2.4.0 = Gauge32: 13
SNMPv2-SMI:: enterprise.318.1.1.1.7.2.3.0 = STRING: "NO"
SNMPv2-SMI:: enterprise.318.1.1.1.7.2.4.0 = STRING: "NO"
SNMPv2-SMI:: enterprise.318.1.1.1.8.1.0 = Gauge32: 1

Wenn Sie das Überwachungsskript weiter konfigurieren, erhalten Sie diese raffinierten Diagramme:

Erhalten Sie verschiedene aktive und inaktive Fenster in Windows 10

Erhalten Sie verschiedene aktive und inaktive Fenster in Windows 10

EMPFOHLEN: Klicken Sie hier, um Windows-Probleme zu beheben und die Systemleistung zu optimierenV...

Weiterlesen

Deaktivieren Sie das automatische Erweitern des Startmenüs bei Mouseover in Windows 10

Deaktivieren Sie das automatische Erweitern des Startmenüs bei Mouseover in Windows 10

EMPFOHLEN: Klicken Sie hier, um Windows-Probleme zu beheben und die Systemleistung zu optimierenS...

Weiterlesen

Windows 10 Build 19037 (schnelle und langsame Ringe, 20H1)

Diese Website verwendet Cookies, um Ihre Erfahrung beim Navigieren durch die Website zu verbesser...

Weiterlesen