Есть oid приходящий на событие и есть этот же oid с определенным varbind. Не удается получить аларм на событие с этим биндом. Срабатывает только на сам oid. Трапы и эвенты созданы на оба. Кто-то возможно сталкивался?
А можно более подробно описать конфигурацию? Или прислать скриншоты?
Есть оид .1.3.6.1.4.1.318.0.173 на него настроен эвент, аларм нормально работает.
Есть этот же оид но аларм нужен на varbinds 1.3.6.1.4.1.318.1.1.10.2.3.4.1.2.0 с instance 2.
Создаю второй трап для оид .1.3.6.1.4.1.318.0.173 с отдельным эвентом, добавляю Parameter bindings 1.3.6.1.4.1.318.1.1.10.2.3.4.1.2.2
Трапы сыпаются, но эвент не отрабатывает, даже если отключить первый эвент (без varbind который).
При обработке трапов событие ищется только по oid. Если нужно проверять конкретные переменные в трапе, то надо их добавлять в event и делать дополнительные проверки скриптом в event processing policy. Т.е. в описанном случае надо сделать одну запись в trap configuration:
OID = .1.3.6.1.4.1.318.0.173, Parameter bindings $2 = 1.3.6.1.4.1.318.1.1.10.2.3.4.1.2.2
а в event processing policy в скрипте написать например
$2 != ""
тогда правило отработает только если второй параметр будет содержать какое-то значение.
Как то все-равно не хочет. Пропускает этот эвент и срабатывает на oid без бинда.
Ne srabativaet, poskol'ku OID .1.3.6.1.4.1.318.0.173 prisutstvuet dvazdi - nado udalit' zapis' nomer 11, i togda vse dolzno stat' horosho.
P.S. Nu i v event policy obrabativat' sobitie "Electrotechnical case open"
Спасибо, так лучше :)
Осталось добиться, чтобы они срабатывали по отдельности. Сейчас по эвенту выдает оба аларма.
Действительно, есть ошибка в обработчике трапов - если не смогли найти varbind с указанным oid'ом, то соответствующий параметр события выставлялся не в пустую строку, а в текст "<null>" (без кавычек). В 0.2.22 исправлено.
Аналогичная ситуация, но в varbind первая позиция приходит в виде: "ALM 42 : EXCESSIVE ERR RATIO - IO 2:1" где 2:1 изменяемая часть. Не соображу как сказать (в event processing Script), что первая позиция долджна быть "ALM 42 : EXCESSIVE ERR RATIO - IO (любое значение)".
Могу предложить три варианта:
$2 like "ALM 42 : EXCESSIVE ERR RATIO - IO *"
$2 match "ALM 42 : EXCESSIVE ERR RATIO - IO .*"
substr($2, 1, 54) == "ALM 42 : EXCESSIVE ERR RATIO - IO"
Спасибо. Требуемого результата добился. Еще бы в документацию включить весь возможный синтаксис в этих скриптах.
Обязательно напишу :) Пока-что там есть описания всех функций.