Windows Tips & News

Як контролювати стан USB UPS через SNMP

click fraud protection
РЕКОМЕНДУЄМО: Натисніть тут, щоб вирішити проблеми з Windows та оптимізувати продуктивність системи

Як контролювати стан USB UPS через SNMP

Існує кілька комп’ютерів із USB-підключеним ДБЖ. Усі комп’ютери використовують програму apcupsd. Скажімо, ви хочете зібрати інформацію про стан джерела живлення для кожного блоку в одному місці. Оскільки snmpd там уже працює, логічно було б розширити його функціональність.

Реклама

Наведене нижче рішення, надане Блог адміністратора, збиратиме дані з усіх одиниць snmpd одночасно.

Щоб відстежувати стан USB UPS через SNMP, нам потрібно спочатку змінити конфігурацію демона snmp.

Змістприховати
Препарати
Як контролювати стан USB UPS через SNMP

Препарати

Додає наступне до конфігурації snmpd.conf.

# ДБЖ APC
передати .1.3.6.1.4.1.318.1.1.1 /bin/sh /etc/snmp/apcupsd.sh

Вміст сценарію /etc/snmp/apcupsd.sh виглядає наступним чином.

#!/bin/sh -f # Перевірте, чи apcupsd онлайн. apcaccess > /dev/null 2>&1 || вихід 0 PLACE=".1.3.6.1.4.1.318.1.1.1" REQ="$2" # Запрошений OID # # Обробляйте запити SET, просто реєструючи призначене значення. # Зауважте, що такі "призначення" не є постійними, # не перевіряються синтаксис чи запитане значення. # якщо [ "$1" = "-s" ]; тоді. echo $* >> /tmp/passtest.log. вихід 0. fi # # Запити GETNEXT - визначити наступний дійсний екземпляр. # якщо [ "$1" = "-n" ]; тоді. випадок "$REQ" у. $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;; *) вихід 0;; esac. інше. # # Запити GET - перевірте дійсний екземпляр. # випадок "$REQ" у. $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;; *) вихід 0;; esac. fi # # "Обробити" запити GET* - повернути жорстко запрограмоване значення. # луна "$RET" справа "$RET" у. $PLACE.1.1.1.0) echo "рядок"; apcaccess -u -p МОДЕЛЬ; вихід 0;; $PLACE.2.2.1.0) echo "Gauge32"; apcaccess -u -p BCHARGE; вихід 0;; $PLACE.2.2.2.0) echo "Gauge32"; apcaccess -u -p ITEMP; вихід 0;; $PLACE.2.2.3.0) echo "Timeticks"; echo $(($(LC_ALL=C printf "%.*f" 0 $(apcaccess -u -p TIMELEFT)) * 6000)); вихід 0;; $PLACE.2.2.4.0) echo "рядок"; apcaccess -u -p BATTDATE; вихід 0;; $PLACE.3.2.1.0) echo "Gauge32"; apcaccess -u -p LINEV; вихід 0;; $PLACE.3.2.4.0) echo "Gauge32"; apcaccess -u -p LINEFREQ; вихід 0;; $PLACE.3.2.5.0) echo "рядок"; apcaccess -u -p LASTXFER; вихід 0;; $PLACE.4.2.1.0) echo "Gauge32"; apcaccess -u -p OUTPUTV; вихід 0;; $PLACE.4.2.2.0) echo "Gauge32"; apcaccess -u -p LINEFREQ; вихід 0;; $PLACE.4.2.3.0) echo "Gauge32"; apcaccess -u -p LOADPCT; вихід 0;; $PLACE.4.2.4.0) echo "Gauge32"; apcaccess -u -p LOADPCT; вихід 0;; $PLACE.7.2.3.0) echo "рядок"; apcaccess -u -p САМОТЕСТ; вихід 0;; $PLACE.7.2.4.0) echo "рядок"; apcaccess -u -p САМОТЕСТ; вихід 0;; $PLACE.8.1.0) echo "Gauge32"; відлуння 1; вихід 0;; *) echo «рядок»; луна "підтвердити... $RET $REQ"; вихід 0;; # Не повинно статися. esac.

Якщо вам цікаво про OID, ви можете знайти їх ТУТ. Зауважте, що деякі моделі ДБЖ повертають не всі параметри або у неправильному форматі, тому код може містити неточності та заглушки.

Тепер ви готові.

Як контролювати стан USB UPS через SNMP

Щоб контролювати стан USB UPS через SNMP, виконайте таку команду: snmpwalk -v 1 -c загальнодоступна 127.0.0.1 .1.3.6.1.4.1.318.1.1.1. Вихід буде таким:

SNMPv2-SMI:: enterprises.318.1.1.1.1.1.1.0 = STRING: «Smart-UPS 750»
SNMPv2-SMI:: enterprises.318.1.1.1.2.2.1.0 = Gauge32: 100
SNMPv2-SMI:: enterprises.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:: enterprises.318.1.1.1.3.2.1.0 = Gauge32: 227
SNMPv2-SMI:: enterprises.318.1.1.1.3.2.4.0 = Gauge32: 50
SNMPv2-SMI:: enterprises.318.1.1.1.3.2.5.0 = STRING: "Автоматична або явна самоперевірка"
SNMPv2-SMI:: enterprises.318.1.1.1.4.2.1.0 = Gauge32: 227
SNMPv2-SMI:: enterprises.318.1.1.1.4.2.2.0 = Gauge32: 50
SNMPv2-SMI:: enterprises.318.1.1.1.4.2.3.0 = Gauge32: 13
SNMPv2-SMI:: enterprises.318.1.1.1.4.2.4.0 = Gauge32: 13
SNMPv2-SMI:: enterprises.318.1.1.1.7.2.3.0 = STRING: "НІ"
SNMPv2-SMI:: enterprises.318.1.1.1.7.2.4.0 = STRING: "НІ"
SNMPv2-SMI:: enterprises.318.1.1.1.8.1.0 = Gauge32: 1

Якщо ви додатково налаштуєте сценарій моніторингу, ви можете отримати ці чудові графіки:

ЗавантажитиНапругаТемпература акумулятораЧас виконання
РЕКОМЕНДУЄМО: Натисніть тут, щоб вирішити проблеми з Windows та оптимізувати продуктивність системи
Як приховати вікно пошуку в Internet Explorer 11

Як приховати вікно пошуку в Internet Explorer 11

РЕКОМЕНДУЄМО: Натисніть тут, щоб вирішити проблеми з Windows та оптимізувати продуктивність систе...

Читати далі

Microsoft запускає бета-версію Outlook.com

Microsoft запускає бета-версію Outlook.com

Нове офіційне повідомлення показує, що Microsoft випускає нову бета-версію Outlook.com, поштової ...

Читати далі

Виправлено затримки введення в іграх на Windows 10

Виправлено затримки введення в іграх на Windows 10

Багато геймерів перейшли на Windows 10 через нові функції, які пропонує їм ця операційна система....

Читати далі