Не удается получить аларм с snmp-trap с определенным varbind.

Started by isherim, July 21, 2008, 12:27:06 PM

Previous topic - Next topic

isherim

Есть oid приходящий на событие и есть этот же oid с определенным varbind. Не удается получить аларм на событие с этим биндом. Срабатывает только на сам oid. Трапы и эвенты созданы на оба. Кто-то возможно сталкивался?

Victor Kirhenshtein

А можно более подробно описать конфигурацию? Или прислать скриншоты?

isherim

Есть оид .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 который).

Victor Kirhenshtein

При обработке трапов событие ищется только по 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 != ""


тогда правило отработает только если второй параметр будет содержать какое-то значение.

isherim

Как то все-равно не хочет. Пропускает этот эвент и срабатывает на oid без бинда.

Victor Kirhenshtein

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"

isherim

Спасибо, так лучше :)
Осталось добиться, чтобы они срабатывали по отдельности. Сейчас по эвенту выдает оба аларма.

Victor Kirhenshtein

Действительно, есть ошибка в обработчике трапов - если не смогли найти varbind с указанным oid'ом, то соответствующий параметр события выставлялся не в пустую строку, а в текст "<null>" (без кавычек). В 0.2.22 исправлено.

isherim

Аналогичная ситуация, но в varbind первая позиция приходит в виде: "ALM 42 :    EXCESSIVE ERR RATIO                   - IO 2:1" где 2:1 изменяемая часть. Не соображу как сказать (в event processing Script), что первая позиция долджна быть "ALM 42 :    EXCESSIVE ERR RATIO                   - IO (любое значение)".

Victor Kirhenshtein

Могу предложить три варианта:

$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"

isherim

Спасибо. Требуемого результата добился. Еще бы в документацию включить весь возможный синтаксис в этих скриптах.

Victor Kirhenshtein

Обязательно напишу :) Пока-что там есть описания всех функций.