Парсить snmp-traps

Started by sdm, February 26, 2015, 10:16:43 AM

Previous topic - Next topic

sdm

Добрый день, существует ли способ парсить snmp-traps, после чего присваивать получившееся значение как DCI для определенного виртуального хоста?

Примеры получаемых трапов:

26.02.2015 11:53:10   ip-адрес    hyperic   .1.3.6.1.4.1.4   .1.5.4 == 'common_alert_for_space:common_alert_for_space XX-XXX-01 Win32 File System D:\ (local/NTFS) Use Percent (86,0%) '

17.02.2015 15:14:13   ip-адрес    VIDEOSERVER       .1.3.6.1.4.1.11141.3.2.0.602            .1.3.6.1.4.1.11141.3.1.1.0 == 'FAIL'; .1.3.6.1.4.1.11141.3.1.2.0 == 'SERVERNAME'; .1.3.6.1.4.1.11141.3.1.3.0 == 'Drive: xxxxxxxx-xxxxxxxx in slot -1')

19.02.2015 11:37:46    ip-адрес      hyperic           .1.3.6.1.4.1.3     .2.2.8 == 'Card: Alert :Card: Alert  Card_1@XX-XXX-02 Availability (0.0%)

04.12.2014 15:38:18    ip-адрес      server      .1.3.6.1.6.3.1.1.5.1         .1.3.6.1.2.1.1.5.0 == 'Trap Generated by server'; .1.3.6.1.4.1.2162.1.1.2.2 == '-'; .1.3.6.1.4.1.2162.1.1.2.3 == '-'; .1.3.6.1.4.1.2162.1.1.2.4 == '-'; .1.3.6.1.4.1.2162.1.1.2.5 == '-'; .1.3.6.1.4.1.2162.1.1.2.6 == '-'; .1.3.6.1.4.1.2162.1.1.2.7 == '-'; .1.3.6.1.4.1.2162.1.1.2.8 == '-'

В настоящий момент есть идея получать сообщения от других систем мониторинга и оборудования в форме трапов (есть оборудование, что умеет слать трапы, но не умеет snmp),
всю остальную логику реализовать уже в пределах netxms.
т.е. в имеющихся системах мониторинга реализовать отсыл snmp-traps в случае не достижения каких-либо критичных значений, а просто при изменении значения метрики
далее критичность этих значений определять уже в netxms.

Victor Kirhenshtein

Можно, хотя и довольно длинным путем. Сначала надо сделать события из трапов (одно или несколько, не так важно) и вытащить данные в параметры события, а затем в правилах обработки событий вызвать NXSL скрипт, в котором функцией PushDCIData создать новое значение соответствующего push DCI.

sdm

Логика понятна, пасиба..