巧用escalations限制Nagios报警次数
来源:互联网 发布:阿里云 geotrust 编辑:程序博客网 时间:2024/05/16 16:20
Nagios是非常强大的一款监控工具,尤其是它的告警功能,现在网上实现的形式多种多样如结合移动139邮箱、Fetion、MSN等,但是如果服务器出现故障而未能及时的解决,Nagios就会不断的发送告警信息,实在令人头疼。现在用如下方法可以解决Nagios的告警次数问题。
系统环境:CentOS 5.2
Nagios版本:3.0.6
Nagios安装路径:/usr/local/nagios
配置文件内容定义:#基本的配置就不再进行注释了。
hosts.cfg
define host{
host_name WWW-Server
alias WWW-Server
address 193.1.16.100
check_command check-host-alive
max_check_attempts 5
check_period 24x7
notification_interval 10
notification_period 24x7
notification_options d,u,r
notifications_enabled 1
contact_groups chengnan
}
Services.cfg
define service{
host_name WWW-Server
service_description Check_HTTP
check_command check_http
max_check_attempts 10
normal_check_interval 3
retry_check_interval 2
check_period 24x7
notification_interval 5
notification_period 24x7
notification_options w,u,c,r
contact_groups admin
}
define service{
host_name WWW-Server
service_description Check_Jetty
check_command check_tcp!8080
max_check_attempts 10
normal_check_interval 3
retry_check_interval 2
check_period 24x7
notification_interval 5
notification_period 24x7
notification_options w,u,c,r
contact_groups admin
}
Contacts.cfg
define contact{
contact_name chengnan
alias chengnan
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-service-by-email
host_notification_commands notify-host-by-email
email chengnan@139.com //手机邮箱
}
define contactgroup{
contactgroup_name chengnan
alias Nagios Administrators
members chengnan
}
除此之外再定义一个联系人
define contact{
contact_name chengnan_cor
alias chengnan_cor
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-service-by-email
host_notification_commands notify-host-by-email
email chengnan@company.com //公司邮箱
}
define contactgroup{
contactgroup_name sysadmin
alias sysadmin
members chengnan_cor
}
然后创建一个配置文件:
vi escalations.cfg
escalations有自动调整;不断增加; 逐步上升等意思,本身配置文件的功能是当服务在某一告警次数前没有恢复,告警频率周期将会缩短,同时将告警信息发送至指定联系人。
其内容为:
define hostescalation{
host_name WWW-Server //被监控主机名称,与Hosts.cfg中一致
first_notification 4 // 第n条信息起,改变频率间隔
last_notification 0 // 第n条信息起,恢复频率间隔
notification_interval 30 // 通知间隔(分)
contact_groups sysadmin
}
说明:从第4条告警信息起至服务器恢复前,告警信息发送至sysadmin组下的联系人,告警间隔为30分钟1条信息。
define serviceescalation{
host_name WWW-Server //被监控主机名称,与Hosts.cfg中一致
service_description Check_HTTP,Check_Jetty //被监控服务名称,与Services.cfg中一致
first_notification 4
last_notification 0
notification_interval 30
contact_groups sysadmin
}
保存
修改nagios.cfg
vi nagios.cfg
添加:
cfg_file=/usr/local/nagios/etc/objects/escalations.cfg
检查nagios配置文件是否正确
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
重新启动nagios服务:
service nagios restart
测试:
服务器启动后停掉被监控测试机的相应服务,确认告警信息是否按照设置发送至不同信箱
后记
escalations这个功能官方给的定义是notification的扩充,使notification变得更加灵活,方便。文中我使用的方法算是耍了个小聪明,将第四条告警信息后的所有信息全部发送至我公司邮箱直至服务器恢复(recovery的信息还是会发送至手机的),从而实现限制告警信息发送至手机的条数。
官方文档地址:http://nagios.sourceforge.net/docs/3_0/escalations.html
- 巧用escalations限制Nagios报警次数
- 限制Nagios报警次数
- nagios 限制报警次数
- nagios报警次数限制
- 报警限制发送次数
- nagios报警,禁用之
- 磁盘监控报警-nagios
- nagios邮件报警设置
- Nagios微信报警
- nagios邮件报警设置
- nagios 邮件报警
- nagios邮件报警
- nagios + asterisk 实现电话报警
- nagios报警参数详细设置
- nagios 邮件报警的设置
- Nagios短信猫报警配置
- nagios 检查,重试和报警周期
- nagios 使用MSN 发报警消息
- 自定义Field,paint background后光标消失的另类解决方法
- Window自带程序及相应服务
- 段错误bug的调试
- Struts2的后台与前台数据交互处理方式的简单总结
- c++把unicode字符转为汉字
- 巧用escalations限制Nagios报警次数
- [转!]18 startupmistakes
- 展望未来,总结过去10年的程序员生涯
- [转载]手工分析句柄表
- 将weblech改造成文件爬虫(二)
- SQLiteOpenHelper自动建立数据库
- android2.2 手机号码的读取
- 思考
- 先下滚动新闻条