- PVSM.RU - https://www.pvsm.ru -
Система мониторинга OpenNMS [1] — одна из наиболее мощных и распространенных систем управления сетью (NMS).
OpenNMS — это свободное программное обеспечение мониторинга сетевой инфраструктуры уровня предприятия. Кроме обычной для Open Source-проектов поддержки сообществом пользователей, производитель предоставляет многоуровневое коммерческое сопровождение продукта: от внедрения до обеспечения технической поддержки 24х7 и обучения персонала.
OpenNMS реализована на Java, что обеспечивает кроссплатформенность: поддерживаются ОС семейств Linux, Solaris, Mac OS X, Windows, теоретически — любая с поддержкой Java SDK 1.4 и выше.
Обзор возможностей:
Более подробный обзор, например, здесь: Система мониторинга OpenNMS [2]
Вес (severity) событий определяет код и уровень важности события в системе мониторинга.
Вес события может, например, использоваться для визуального выделения сообщений о событиях в журнале (логе).
События OpenNMS могут иметь следующий вес:
Вес событий в OpenNMS задается путем ранжирования входящих сообщений по правилам, заданным в файлах конфигурации для событий.
Для добавления обработчика события SNMP Trap PDU оборудования необходимо произвести следующие действия:
1) Создать файл события SNMP Trap PDU в $ONMS/etc/events Например, MyDeviceVendor.events.xml
<events xmlns="http://xmlns.opennms.org/xsd/eventconf">
<event>
<mask>
<maskelement>
<mename>id</mename>
<!-- замените {VendorID} на реальный, для вашего оборудования -->
<mevalue>.1.3.6.1.4.1.{VendorID}.1</mevalue>
</maskelement>
<maskelement>
<mename>generic</mename>
<mevalue>6</mevalue>
</maskelement>
<maskelement>
<mename>specific</mename>
<mevalue>5</mevalue>
</maskelement>
<varbind>
<!-- для фильтрации по значению переменной. Оключено.
<vbnumber>1</vbnumber>
<vbvalue>1011</vbvalue>
-->
<!-- для фильтрации по содержимому переменной -->
<vbnumber>2</vbnumber>
<vbvalue>~(.*)'warning'(.*)</vbvalue>
<vbvalue>~(.*)'off'(.*)</vbvalue>
<vbvalue>~(.*)'on'(.*)</vbvalue>
</varbind>
</mask>
<uei>uei.opennms.org/vendor/myvendor/traps/myVendorTrapNotification</uei>
<event-label>trap event: myVendorTrapNotification</event-label>
<descr>
<![CDATA[
<p>Received: %parm[#2]% </p>
]]>
</descr>
<logmsg dest='logndisplay'>
<![CDATA[
<p>Trap ID: %parm[#1]% </p>
<p>Received: %parm[#2]% </p>
]]>
</logmsg>
<severity>Warning</severity>
</event>
<event>
<mask>
<maskelement>
<mename>id</mename>
<!-- замените {VendorID} на реальный, для вашего оборудования -->
<mevalue>.1.3.6.1.4.1.{VendorID}.1</mevalue>
</maskelement>
<maskelement>
<mename>generic</mename>
<mevalue>6</mevalue>
</maskelement>
<maskelement>
<mename>specific</mename>
<mevalue>5</mevalue>
</maskelement>
<varbind>
<vbnumber>2</vbnumber>
<vbvalue>~(.*)'alarm'(.*)</vbvalue>
<vbvalue>~(.*)'not connected'(.*)</vbvalue>
<vbvalue>~(.*)'unknown'(.*)</vbvalue>
</varbind>
</mask>
<uei>uei.opennms.org/vendor/myvendor/traps/myVendorTrapNotification</uei>
<event-label>trap event: myVendorTrapNotification</event-label>
<descr>
<![CDATA[
<p>Received: %parm[#2]% </p>
]]>
</descr>
<logmsg dest='logndisplay'>
<![CDATA[
<p>Trap ID: %parm[#1]% </p>
<p>Received: %parm[#2]% </p>
]]>
</logmsg>
<severity>Critical</severity>
</event>
<event>
<mask>
<maskelement>
<!-- замените {VendorID} на реальный, для вашего оборудования -->
<mevalue>.1.3.6.1.4.1.{VendorID}.1</mevalue>
</maskelement>
<maskelement>
<mename>generic</mename>
<mevalue>6</mevalue>
</maskelement>
<maskelement>
<mename>specific</mename>
<mevalue>5</mevalue>
</maskelement>
<varbind>
<vbnumber>2</vbnumber>
<vbvalue>~(.*)'normal'(.*)</vbvalue>
</varbind>
</mask>
<uei>uei.opennms.org/vendor/myvendor/traps/myVendorTrapNotification</uei>
<event-label>trap event: myVendorTrapNotification</event-label>
<descr>
<![CDATA[
<p>Received: %parm[#2]% </p>
]]>
</descr>
<logmsg dest='logndisplay'>
<![CDATA[
<p>Trap ID: %parm[#1]% </p>
<p>Received: %parm[#2]% </p>
]]>
</logmsg>
<severity>Normal</severity>
</event>
</events>
2) подключить этот файл к конфигурации событий OpenNMS:
..
<event-file>events/MyDeviceVendor.events.xml</event-file>
..
Файл MyDeviceVendor.events.xml содержит три узла event с различными настройками фильтра mask, который применяется к переменным SNMP Trap PDU. Каждому узлу event соответствует свой severity (см. соответствующий тег в конце каждого узла)
Как нетрудно заметить, узлы event в примере практически идентичны, за исключением настройки фильтра. Фильтрация м.б. настроена к по совпадению значения переменной, так и по значению переменной для регулярного выражения (см. узел varbind).
В данном случае вес событий задается следующим образом:
Шаблоны заголовка и описания сообщений в журнале для событий можно задать соответственно в узлах descr и logmsg.
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/pesochnitsa/75029
Ссылки в тексте:
[1] OpenNMS: http://www.opennms.org/
[2] Система мониторинга OpenNMS: http://habrahabr.ru/post/193682/
Нажмите здесь для печати.