Отлов SNMP-ловушек с устройств APC
Настройка и отлов SNMP-ловушек с устройств APC в системе мониторинга Zabbix для анализа событий
Для отлова SNMP-ловушек сперва необходимо настроить само устройство, а именно адрес отправки и коммьюнити.
Шаг 1. Настройка устройства
В менеджмент интерфейсе переходим в меню «Configuration» - «Notification» - «SNMP Traps» - «Trap Receivers»
Указываем адрес Zabbix сервера, а так же community доступа - zabbix
.
Шаг 2. Отправляем тестовую ловушку
Переходим в UI Zabbix, на элементы нашего устройства и находим объект SNMP traps (fallback)
. Открываем его и переходим в Latest data.
В случае успешной настройки увидим, что Zabbix отловил SNMP-ловушку.
Шаг 3. Создаём элемент
ВАЖНО!
Если элемент нужно применить для всех устройств, то лучше создавать на уровне шаблона. Если элемент применим исключительно к одному устройству, то создавать его необходимо только на нём!
К примеру, хотим контролировать успешное выполнение самодиагностики с последующим уведомлением в Telegram.
Сперва необходимо отловить SNMP-ловушку. Запускаем Self-test на устройстве. Либо, зная MIB и OID можно вытянуть самим. (В помощь https://oidref.com/)
Получаем примерный вывод:
1 | 17:46:57 2022/07/13 PDU INFO: |
Для нас важно наличие текста UPS: Self-Test passed
в строке SNMPv2-SMI::enterprises.318.2.3.3.0 type=4 value=STRING: "UPS: Self-Test passed."
. На него и будем ориентироваться.
Создаём новый элемент.
Создаём триггер на элемент при котором будем получать алерт
Проверяем
Успешно, но не красиво. Чтобы привести уведомление в читаемый вид необходимо регуляркой обрезать ненужные элементы или же выцепить то, что нам нужно. Воспользуемся сервисом https://www.regextester.com/
И вставим полученное значение \b(\w*UPS: Self-Test passed\w*)\b
в наш созданный элемент данных, в раздел Preprocessing.
Проверяем, что получилось. Нажимаем кнопку Test
, в значение (Value) вводим сырые данные, которые получаем по SNMP-ловушке и выполняем тест.
Как видно из скриншота, в результате мы получаем короткое значение об выполнении теста, которое будет отображаться при алертах.