Windows Tips & News

SNMP aracılığıyla USB UPS durumu nasıl izlenir

ÖNERİLEN: Windows sorunlarını düzeltmek ve sistem performansını optimize etmek için burayı tıklayın

SNMP aracılığıyla USB UPS durumu nasıl izlenir

USB bağlantılı UPS'li birkaç bilgisayar var. Tüm bilgisayarlar apcupsd programını kullanır. Her birim için güç kaynağının durumu hakkında tek bir yerde bilgi toplamak istediğinizi varsayalım. snmpd zaten orada çalıştığından, işlevselliğini genişletmek mantıklı olacaktır.

Reklamcılık

Aşağıdaki çözüm, nezaketen Yöneticinin Blogu, tüm snmpd birimlerinden verileri bir kerede toplayacaktır.

USB UPS durumunu SNMP aracılığıyla izlemek için önce snmp arka plan programı yapılandırmasını değiştirmemiz gerekiyor.

İçindekilersaklamak
Hazırlıklar
SNMP aracılığıyla USB UPS durumu nasıl izlenir

Hazırlıklar

Aşağıdakileri config snmpd.conf dosyasına ekler.

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

/etc/snmp/apcupsd.sh betiğinin içeriği aşağıdaki gibidir.

#!/bin/sh -f # apcupsd'nin çevrimiçi olup olmadığını kontrol edin. apcaccess > /dev/null 2>&1 || çıkış 0 YER=".1.3.6.1.4.1.318.1.1.1" REQ="$2" # İstenen OID # # Sadece atanan değeri günlüğe kaydederek SET isteklerini işleyin. # Bu tür "atamaların" kalıcı olmadığını, # ne de sözdizimi veya istenen değerin doğrulanmadığını unutmayın. # if [ "$1" = "-s" ]; sonra. echo $* >> /tmp/passtest.log. 0'dan çık. fi # # GETNEXT istekleri - bir sonraki geçerli örneği belirleyin. # if [ "$1" = "-n" ]; sonra. durumda "$REQ". $YER| \ $YER.0| \ $YER.0.*| \ $YER.1| \ $PLACE.1.1.0*) RET=$PLACE.1.1.1.0;; $YER.1*| \ $YER.2.0| \ $PLACE.2.0.*| \ $YER.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;; $YER.2*| \ $PLACE.3.0*| \ $PLACE.3.1*| \ $PLACE.3.2.0*) RET=$PLACE.3.2.1.0;; $YER.3.2.1*| \ $YER.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*| \ $YER.4.0*| \ $YER.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.*| \ $YER.5*| \ $YER.6*| \ $PLACE.7.0*| \ $YER.7.1*| \ $PLACE.7.2.0*| \ $YER.7.2.1*| \ $PLACE.7.2.2*) RET=$PLACE.7.2.3.0;; $PLACE.7.2.3*) RET=$PLACE.7.2.4.0;; $YER.7*| \ $PLACE.8.0*) RET=$PLACE.8.1.0;; *) 0 çıkışı;; esac. Başka. # # GET istekleri - geçerli örnek olup olmadığını kontrol edin. # durumda "$REQ". $YER.1.1.1.0| \ $YER.2.2.1.0| \ $YER.2.2.2.0| \ $YER.2.2.3.0| \ $YER.2.2.4.0| \ $YER.3.2.1.0| \ $YER.3.2.4.0| \ $YER.3.2.5.0| \ $YER.4.2.1.0| \ $YER.4.2.2.0| \ $PLACE.4.2.3.0| \ $YER.4.2.4.0| \ $YER.7.2.3.0| \ $YER.7.2.4.0| \ $PLACE.8.1.0) RET=$İSTEK;; *) 0 çıkışı;; esac. fi # # "İşlem" GET* istekleri - sabit kodlanmış değeri döndürür. # yankı "$RET" durumda "$RET". $PLACE.1.1.1.0) echo "dizi"; apcaccess -u -p MODELİ; çıkış 0;; $PLACE.2.2.1.0) echo "Gauge32"; apcaccess -u -p BCHARGE; çıkış 0;; $PLACE.2.2.2.0) echo "Gauge32"; apcaccess -u -p ÖĞE; çıkış 0;; $PLACE.2.2.3.0) echo "Zaman İşaretleri"; echo $(($(LC_ALL=C printf "%.*f" 0 $(apcaccess -u -p TIMELEFT)) * 6000)); çıkış 0;; $PLACE.2.2.4.0) echo "dizi"; apcaccess -u -p BATTDATE; çıkış 0;; $PLACE.3.2.1.0) echo "Gauge32"; apcaccess -u -p LINEV; çıkış 0;; $PLACE.3.2.4.0) echo "Gauge32"; apcaccess -u -p HAT FREK; çıkış 0;; $PLACE.3.2.5.0) echo "dize"; apcaccess -u -p LASTXFER; çıkış 0;; $PLACE.4.2.1.0) echo "Gauge32"; apcaccess -u -p ÇIKIŞTV; çıkış 0;; $PLACE.4.2.2.0) echo "Gauge32"; apcaccess -u -p HAT FREK; çıkış 0;; $PLACE.4.2.3.0) echo "Gauge32"; apcaccess -u -p LOADPCT; çıkış 0;; $PLACE.4.2.4.0) echo "Gauge32"; apcaccess -u -p LOADPCT; çıkış 0;; $PLACE.7.2.3.0) echo "dize"; apcaccess -u -p SEFTEST; çıkış 0;; $PLACE.7.2.4.0) echo "dize"; apcaccess -u -p SEFTEST; çıkış 0;; $PLACE.8.1.0) echo "Gauge32"; yankı 1; çıkış 0;; *) yankı "dize"; yankı "ack... $RET $İSTEK"; çıkış 0;; # Olmamalı. esac.

OID'leri merak ediyorsanız, onları bulabilirsiniz. BURADA. Bazı UPS modellerinin tüm parametreleri veya yanlış biçimde döndürmediğini unutmayın, bu nedenle kod yanlışlıklar ve taslaklar içerebilir.

Artık hazırsınız.

SNMP aracılığıyla USB UPS durumu nasıl izlenir

USB UPS durumunu SNMP aracılığıyla izlemek için aşağıdaki komutu çalıştırın: snmpwalk -v 1 -c genel 127.0.0.1 .1.3.6.1.4.1.318.1.1.1. Çıktı şöyle olacaktır:

SNMPv2-SMI:: işletmeler.318.1.1.1.1.1.1.0 = STRING: "Smart-UPS 750"
SNMPv2-SMI:: işletmeler.318.1.1.1.2.2.1.0 = Gösterge32: 100
SNMPv2-SMI:: işletmeler.318.1.1.1.2.2.2.0 = Gösterge32: 36
SNMPv2-SMI:: işletmeler.318.1.1.1.2.2.3.0 = Zaman Tikleri: (432000) 1:12:000.00
SNMPv2-SMI:: işletmeler.318.1.1.1.2.2.4.0 = STRING: "2020-05-14"
SNMPv2-SMI:: işletmeler.318.1.1.3.2.1.0 = Gösterge32: 227
SNMPv2-SMI:: işletmeler.318.1.1.1.3.2.4.0 = Gösterge32: 50
SNMPv2-SMI:: işletmeler.318.1.1.3.2.2.5.0 = STRING: "Otomatik veya açık kendi kendine test"
SNMPv2-SMI:: işletmeler.318.1.1.1.4.2.1.0 = Gösterge32: 227
SNMPv2-SMI:: işletmeler.318.1.1.1.4.2.2.0 = Gösterge32: 50
SNMPv2-SMI:: işletmeler.318.1.1.1.4.2.3.0 = Gösterge32: 13
SNMPv2-SMI:: işletmeler.318.1.1.1.4.2.4.0 = Gösterge32: 13
SNMPv2-SMI:: işletmeler.318.1.1.1.7.2.3.0 = STRING: "HAYIR"
SNMPv2-SMI:: işletmeler.318.1.1.1.7.2.4.0 = STRING: "HAYIR"
SNMPv2-SMI:: işletmeler.318.1.1.1.8.1.0 = Gösterge32: 1

İzleme komut dosyasını daha da yapılandırırsanız, şu şık grafikleri elde edebilirsiniz:

yüklemeVoltajpil sıcaklığıÇalışma süresi
ÖNERİLEN: Windows sorunlarını düzeltmek ve sistem performansını optimize etmek için burayı tıklayın
Windows 8.1'de Modern uygulamalar için bildirim sesleri nasıl devre dışı bırakılır

Windows 8.1'de Modern uygulamalar için bildirim sesleri nasıl devre dışı bırakılır

ÖNERİLEN: Windows sorunlarını düzeltmek ve sistem performansını optimize etmek için burayı tıklay...

Devamını oku

Classic Shell kullanarak Windows 8.1 ve Windows 8'de kablosuz ağlar nasıl yönetilir

Classic Shell kullanarak Windows 8.1 ve Windows 8'de kablosuz ağlar nasıl yönetilir

Daha önce hakkında yazdık kablosuz ağlar nasıl yönetilir Windows 8 ve Windows 8.1'de komut istemi...

Devamını oku

Linux Mint'te crontab için düzenleyici nasıl sıfırlanır

Linux Mint'te crontab için düzenleyici nasıl sıfırlanır

Cevap bırakınCron, Linux Mint'te kullanılan bir görev zamanlama arka plan programıdır. Bu yazı it...

Devamını oku