OpenNMS扩展 - 事件配置
1. 概述(Overview)
OpenNMS包括一个强有力的事件通知系统,OpenNMS管理事件通知的进程是eventd。主要有两种类型的事件:由OpenNMS内部产生的事件和通过外部的SNMP trap产生的事件。
当事件产生时,将会设置不同的参数,比如:事件描述,事件的log信息与严重级别,另外,通过eventconf.xml文件配置能够自动加载事件发送参数到一个外部的script.
OpenNMS的事件可以伴随一个通知,特别的事件可能通过页面或Email,SMS等方式发出一个通知。
2. 事件(Events)
2.1 配置文件(Configuration File)
事件配置的主要文件位于$OPENNMS_HOME/etc与$OPENNMS_HOME/etc/events目录下(本例OPENNMS_HOME为/usr/local/opennms/source/dist)。
2.1.1 eventconf.xml
这个文件定义通用事件识别码(Universal Event Identifiers或UEIs)以及它们的事件屏蔽(masks),描述,记录文件信息和严重程度。
<?xml version="1.0"?>
<events xmlns="http://xmlns.opennms.org/xsd/eventconf">
<global>
<security>
<doNotOverride>logmsg</doNotOverride>
<doNotOverride>operaction</doNotOverride>
<doNotOverride>autoaction</doNotOverride>
<doNotOverride>tticket</doNotOverride>
<doNotOverride>script</doNotOverride>
</security>
</global>
<event-file>/usr/local/opennms/source/dist/etc/events/SureTech.events.xml</event-file>
<event-file>/usr/local/opennms/source/dist/etc/events/3Com.events.xml</event-file>
<event-file>/usr/local/opennms/source/dist/etc/events/Standard.events.xml</event-file>
<event>
<uei>MATCH-ANY-UEI</uei>
<event-label>OpenNMS defined event: MATCH-ANY-UEI</event-label>
<descr>
<p>This UEI will never be generated, but exists
so that notifications can match any UEI for a
particular filter rule. Useful to see all events for
a particular node via notifications.
</p>
</descr>
<logmsg dest='logonly'>
MATCH-ANY-UEI event.
</logmsg>
<severity>Indeterminate</severity>
</event>
<event-file>/usr/local/opennms/source/dist/etc/events/default.events.xml</event-file>
</events>
eventconf.xml包括内部事件与外部事件的配置,内部事件主要是OpenNMS的事件,外部事件是自定义的事件,如企业事件。外部事件主要是通过<event-file>标签引入。如引入SureTech企业的外部事件:
<event-file>/usr/local/opennms/source/dist/etc/events/SureTech.events.xml</event-file>
所有的事件由企业分开。当opennms启动时,每个企业事件配置文件会被载入,根据引入文件选择顺序载入,定义在eventconf.xml文件中的事件会被事先加载。最佳实践是将内部事件定义在eventconf.xml中。
注:在eventconf.xml最底端:
<event-file>/usr/local/opennms/source/dist/etc/events/default.events.xml</event-file>
这个文件包含通用缺省事件,要始终列在最后。
2.1.2 trapd-configuration.xml (daemon)
这个文件定义SNMP trap的埠口(port)。
<?xml version="1.0"?>
<trapd-configuration snmp-trap-port="162" new-suspect-on-trap="true"/>
2.1.3 eventd-configuration.xml (daemon)
这个文件定义eventd的运行参数,TCP,UDP端口,监听执行的线程数,下一个事件ID,Socket是否设置超时及超时时间。
<EventdConfiguration
TCPPort="5817"
UDPPort="5817"
receivers="5"
getNextEventID="SELECT nextval('eventsNxtId')"
socketSoTimeoutRequired="yes"
socketSoTimeoutPeriod="3000">
</EventdConfiguration>
2.1.4 actiond-configuration.xml (daemon)
在事件(events)产生时所呼叫的外部程序称为(actions). 此文件设置控制最多可以同时执行的action数量, 以及等待action执行完毕回传结果的逾时值。
<?xml version="1.0"?>
<actiond-configuration
max-outstanding-actions="10"
max-process-time="120000">
</actiond-configuration>
2.1.5 events.archiver.properties, events-archiver-configuration.xml
Event模块日志配置。
2.1.5自定义事件文件(企业事件)
如:建立SureTech.events.xml
<events>
<!-- Start of SureTech Traps -->
<!-- Start of SureTech MIB: SureTech-MIB -->
<event>
<mask>
<maskelement>
<mename>id</mename>
<mevalue>.1.3.6.1.4.1.888.1</mevalue>
</maskelement>
<maskelement>
<mename>generic</mename>
<mevalue>6</mevalue>
</maskelement>
<maskelement>
<mename>specific</mename>
<mevalue>1</mevalue>
</maskelement>
</mask>
<uei>
uei.opennms.org/vendor/SureTech/traps/SureTechCPUResourcesConsuemed
</uei>
<event-label>
SureTech-MIB defined trap event:
SureTechCPUResourcesExceedConsuemed
</event-label>
<descr>
<p>An ECC single-bit error has been corrected in one
of the memory modules</p><table> </table>
</descr>
<logmsg dest='logndisplay'>
<p>SureTech Event: EEC Single-bit Error
Corrected.</p>
</logmsg>
<severity>Normal</severity>
</event>
<event>
<mask>
<maskelement>
<mename>id</mename>
<mevalue>.1.3.6.1.4.1.888.%</mevalue>
</maskelement>
<maskelement>
<mename>generic</mename>
<mevalue>6</mevalue>
</maskelement>
</mask>
<uei>
uei.opennms.org/vendor/SureTech/traps/EnterpriseDefault
</uei>
<event-label>
OpenNMS-defined trap event: SureTech EnterpriseDefault
</event-label>
<descr>
<p>This is the default event format used when an
enterprise specific event (trap) is received from a SureTech
device for which no format has been configured (i.e. no
event definition exists).</p>
</descr>
<logmsg dest='logndisplay'>
Received unformatted enterprise event (enterprise:%id%
generic:%generic% specific:%specific%). %parm[##]% args:
%parm[all]%
</logmsg>
<severity>Indeterminate</severity>
</event>
</events>
事件文件以<events>标记开始以</events>标记结束。
<mename>标签的值可能有如下值:
l uei
l source
l host
l snmphost
l nodeid
l interface
l service
l id
l specific
l generic
l community
例子中的menname是取id,即企业OID=.1.3.6.1.4.1.888.1,generic值为6表现根据企业特定的MIB即1来产生事件。
Generic是trap类型,共分为表4中的7种。
trap类型
|
名字
|
说明
|
0
|
coldStart
|
代理进行了初始化
|
1
|
warmStart
|
代理进行了重新初始化
|
2
|
linkDown
|
一个接口从工作状态变为故障状态
|
3
|
border-right: black 1pt solid; pa
分享到:
Global site tag (gtag.js) - Google Analytics
|
相关推荐
2. **JMS(Java消息服务)**:OpenNMS使用JMS来处理事件和通知,实现异步通信,提高系统的响应速度和可扩展性。 3. **JMX(Java管理扩展)**:用于管理和监控系统资源,OpenNMS通过JMX暴露管理接口,便于监控自身...
7. **自动化和脚本**:openNMS支持自动化任务和脚本执行,例如通过RANCID(Really Awesome New Cisco INTF Detector)进行配置备份,或使用Perl、Python等脚本语言进行定制操作。 通过分析`opennms-1.10.3-1`源代码...
在IT行业中,网络管理是至关重要的环节,而OpenNMS作为一款开源的网络管理系统,以其强大的功能和灵活的可扩展性,深受广大网络管理员的喜爱。"opennms-source.tar.gz_SNMP_openNMS"这个压缩包,便是OpenNMS源码的...
本手册将详细介绍OpenNMS的配置与功能,帮助你充分利用这个强大的工具。 一、安装与配置 1. **系统需求**:在开始安装OpenNMS之前,你需要确保你的服务器满足最低的硬件和软件要求,通常包括Java运行环境(JRE)和...
OpenNMS-Helm是基于OpenNMS监控系统的Grafana插件,它能够扩展Grafana的功能,以适应更复杂的网络监控需求。OpenNMS-Helm的安装和配置涉及到多个步骤,包括系统的前置安装条件、安装OpenNMS-Helm、启动服务、启用...
该项目旨在通过引入一个稳定的接口来对其进行编写,从而使其更容易为OpenNMS编写插件和扩展。 然后,OpenNMS和Meridian的版本将实现API的至少一个主要版本。 特征 API的用户当前可以利用以下功能和界面。 有关完整...
在 OpenNMS 中,模块通常指的是扩展或增强核心功能的独立组件,它们可以提供监控、报告或其他特定服务。 OpenNMS 是一个开源的企业级网络监控系统,它的核心功能包括自动发现网络设备、性能监视、故障检测和通知。...
此配置流程的关键在于将OpenNMS与Newts及Cassandra有效集成,通过这种方式可以大大提升大规模监控场景下数据处理的性能和扩展性。Cassandra作为一个分布式NoSQL数据库,在高写入吞吐和水平扩展方面表现出色,这使得...
管理扩展 (JMX) 从 Java 虚拟机监控性能指标。 此配置已通过以下测试: CentOS 7 与 OpenJDK 运行时环境 (1.8.0_181-b13) 带有 OpenNMS Helm 2.0.0 的 Grafana 5.3.1 安装 从 GitHub 下载并安装 mkdir ${HOME} /...
- **最新版本**:Ubuntu 配置 MRTG 监控 Nginx 和服务器系统资源,此版本发布于三年前。 - **功能**: - 网络流量监控; - 图形化展示; - 配合其他工具实现更复杂监控需求。 #### 系统信息采集和监控工具Tsar ...
OpenNMS 的核心优势在于其灵活性、可扩展性和高度定制化,使得用户可以根据自己的需求进行配置和调整。 1. **开源的优势**: 开源意味着OpenNMS的源代码对所有人开放,允许用户自由地查看、修改和分发软件。这一...
这个存储库是用于生成docs.opennms.com文档站点的源代码,它包含构建系统、模板、内容和配置,使得开发者和贡献者可以方便地更新和扩展文档。 在"docs.opennms.com:生成用于docs.opennms.com的文档站点的存储库"中...
读者将了解到如何利用 Spring Security 实现认证、授权以及如何根据具体需求进行扩展和配置。 总的来说,Spring Security 是一个强大的安全框架,它为开发者提供了广泛的身份验证和授权选项,简化了安全配置,并...
- **注释**:添加时间范围内的注释,帮助解释图表中的重要事件。 - **仪表板小部件**:除了图表,还可以添加文本、图像、按钮等小部件,丰富仪表板内容。 ### 5. JSON模式编辑 对于高级用户,Grafana还允许直接...
此外,它还可以与其他流行的安全框架或工具结合使用,例如JOSSO、OpenNMS Network Management Platform等。 **4.1 扩展认证机制** Spring Security支持多种认证机制的扩展,如透明身份验证上下文传播、自动“记住...
Opennms 可以支持 SNMP 网络管理协议确保管理的扩展性,并且提供非常灵活的定制功能从而有利于管理范围的伸缩。它内置的故障事件管理以提供故障事件的记录和分析的能力,快速隔离非根源事件并迅速发现故障原因。 ...
SNMP(简单网络管理协议)是一种广泛用于网络设备管理和监控的标准协议,它允许网络管理员远程收集和配置网络设备的状态信息。在这个"SNMP Agent端源程序"中,开发者基于OpenNMS平台创建了一个自定义的SNMP Agent...
- 集成网络管理系统:将Spumoni配置到OpenNMS、Tivoli或其他网络管理系统,实现应用程序的远程监控。 5. **最佳实践** - 定期检查和更新配置,以适应应用程序的变化。 - 对于复杂的监控场景,可以编写脚本来处理...