百度告警平台地址: http://gaojing.baidu.com

联系我们:

邮箱:gaojing@baidu.com

电话:13924600771

QQ群:183806029

Nagios接入

对于使用Nagios的用户,要接入百度告警非常简单,只需要按以下四步骤进行配置,就可以使用短信、电话、微信来接收Nagios告警信息

接入步骤:

Step 1:在百度告警中配置服务和升级策略。

Step 2:在Nagios中配置command.cfg,配置百度告警接方式。

Step 3:在Nagios中配置templates.cfg,配置联系人使用百度告警接收告警。

Step 4:测试配置是否成功,使用电话、短信、邮件、微信接收告警!


Step 1 在百度告警中配置服务和升级策略

  1. 登录百度告警,完善个人联系方式,然后点击进入默认空间
  2. 点击升级策略,创建微信、电话、短信、邮件接收告警信息的升级策略
  3. 在服务管理中,创建Nagios接收服务
  4. 请记录下服务ID以及Token,演示视频中的服务ID为3222,token为61525e2074ae83c71b75e3a3e51eb948,在后续Nagios配置中需要用到


Step 2:在Nagios中配置command.cfg

1) 将百度告警发送脚本gaojing_nagios.sh下载到Nagios命令目录下(默认为/usr/local/nagios/libexec),确认其权限与其他命令一样 (如nagios:nagios)

点击这里下载gaojing_nagios.sh告警脚本

gaojing_nagios.sh 脚本内容:

#! /bin/bash  

TIME=`date`  

SEND_TO=$1  

TITLE="nagios alert"  

CONTENT=$2  

SERVICE_ID=`eval echo $SEND_TO|awk -F, '{print $1}'`  

SERVICE_KEY=`eval echo $SEND_TO|awk -F, '{print $2}'`  

EVENT_TYPE='trigger'  

DESCRIPTION="$TITLE-$CONTENT"  

DATA="{service_id : \"$SERVICE_ID\", description : \"$DESCRIPTION\",event_type : \"$EVENT_TYPE\"}"  

curl --silent -H "servicekey:$SERVICE_KEY" -X POST -d "$DATA" http://gaojing.baidu.com/event/create

如果Nagios的安装目录为默认目录,并且Nagios的启动用户为 nagios , 可以参考如下命令:

cd /usr/local/nagios/libexec  

wget http://help.gaojing.baidu.com/help/wp-content/uploads/2015/10/gaojing_nagios.sh  

chown nagios:nagios gaojing_nagios.sh  

chmod 755 gaojing_nagios.sh  

最后的脚本权限如下图:

2) 修改nagios的配置文件command.cfg(默认位置为:/usr/local/nagios/etc/objects),command.cfg用以配置nagios各项监控和操作命令

添加新的command:notify-service-by-baidugaojingnotify-host-by-baidugaojing,其中 3222 和 61525e2074ae83c71b75e3a3e51eb948 为之前百度告警服务的id和 token

如果Nagios安装在默认目录,可以用如下命令进行编辑:

cd /usr/local/nagios/etc/objects  

vim templates.cfg  

notify-service-by-baidugaojing command : 

define command{
command_name notify-service-by-baidugaojing
command_line /bin/echo "告警类型: $NOTIFICATIONTYPE$ 告警服务: $SERVICEDESC$ 主机别名: $HOSTALIAS$ 主机IP: $HOSTADDRESS$ 服务状态: $SERVICESTATE$ 发生时间: $LONGDATETIME$ 附加信息: $SERVICEOUTPUT$" | xargs -i /usr/local/nagios/libexec/baidu_gaojing.sh 3222,61525e2074ae83c71b75e3a3e51eb948 {}
}

notify-host-by-baidugaojing command :

define command{
command_name notify-host-by-baidugaojing
command_line /bin/echo "告警类型: $NOTIFICATIONTYPE$ 主机名: $HOSTNAME$ State: $HOSTSTATE$ 主机IP: $HOSTADDRESS$ 主机状态: $HOSTOUTPUT$ 发生时间: $LONGDATETIME$ | xargs -i /usr/local/nagios/libexec/baidu_gaojing.sh 3222,61525e2074ae83c71b75e3a3e51eb948 {}
}

Step 3:在Nagios中配置templates.cfg

1) 修改Host和Service告警的发送方式。如果是初始安装配置,直接在模板配置templates.cfg中修改service_notification_commands和host_notification_commands的值为设置好的notify-service-by-baidugaojing和notify-host-by-baidugaojing

如果Nagios安装在默认目录,可以用如下命令进行编辑:

cd /usr/local/nagios/etc/objects

vim templates.cfg

最终编辑后的效果如下图:

2) 重新启动nagios,配置修改就完成了

执行如下指令重启Nagios:

service nagios restart


Step 4:测试配置是否成功

1) 打开Nagios的服务监控页面,我们以Current Load作为测试对象,现在其状态为OK

2) 给被监控对象的机器更多的测试负载

执行如下测试语句,以达到机器负载过高的效果:

cd ~
find . | xargs -P 50 -i cat {} > /dev/null

执行语句后,使用top指令查看机器的负载,效果如下图所示:

4) nagios监控到CRITICAL的告警

5) 在手机上收到百度告警发送的告警短信

Nagios全方位告警接入-电话/微信/短信都支持的更多相关文章

  1. Zabbix全方位告警接入-电话/微信/短信都支持

    百度告警平台地址: http://gaojing.baidu.com 联系我们: 邮箱:gaojing@baidu.com 电话:13924600771 QQ群:183806029 对于使用zabbi ...

  2. Nagios 安装及微信短信提醒

    引言 Nagios 作为业界非常强大的一款开源监视系统. 监控网络服务(SMTP.POP3.HTTP.NNTP.PING 等): 监控主机资源(处理器负荷.磁盘利用率等): 简单地插件设计使得用户可以 ...

  3. Zabbix 集成 OneAlert 实现全方位告警

    1. 前言 告警将重要信息发送给运维「或者其他相关人」,及时发现并且处理问题.在所有开源监控软件里面,Zabbix 的告警方式无疑是最棒的.告警的方式各式各样,从 Email 告警到飞信.139/18 ...

  4. Zabbix 安装及微信短信提醒

    Zabbix简介 Zabbix 近几年得到了各大互联网公司的认可,当然第一点归功与它强大的监控功能,第二点免费开源也得到了广大用户的青睐.Zabbix 能将操作系统中的绝大部分指标进行监控,比如(CP ...

  5. IOS中调用系统的电话、短信、邮件、浏览功能

    iOS开发系列--通讯录.蓝牙.内购.GameCenter.iCloud.Passbook系统服务开发汇总 2015-01-13 09:16 by KenshinCui, 26990 阅读, 35 评 ...

  6. Mac OS X 10.10优胜美地怎样完美接管iphone上的电话和短信

    自从今年苹果第一次的公布会上毛猫就特别注意这个功能.感觉特别Cool,特别方便.但直到今天毛猫才第一次成功測试出这个功能呀.尽管handoff功能还未測出来,可是认为在mac上发短信和打电话也已经足够 ...

  7. Mac OS X 10.10优胜美地如何完美接管iphone上的电话和短信

    自从今年苹果第一次的发布会上毛猫就特别注意这个功能,感觉特别Cool,特别方便.但直到今天毛猫才第一次成功测试出这个功能呀!虽然handoff功能还未测出来,但是觉得在mac上发短信和打电话也已经足够 ...

  8. iOS通过openURL打开原生应用与页面(包括电话,短信,safari等)

    [[UIApplication sharedApplication] openURL:url];通过给url不同的值,可以实现调用系统自带 电话/短信/邮箱/浏览器/... 1.调用 电话phone[ ...

  9. 自定义nagios check_load告警阀值

    自定义nagios  check_load告警阀值 日期:2012-01-11 来源: heipark 分享至: - 默认check_load配置 define service{ use generi ...

随机推荐

  1. 使用BootStrap制作用户登录UI

    先看看劳动成果 布局 左右各一半(col-md-6) 左侧登录框占左侧一半的10/12 右侧是登录系统的注意事项 使用到的BootStrap元素 well 输入框组(input-group) 按钮(b ...

  2. 封装Html5 Fullscreen API

    复制前言: 使用新的全屏 API,可以将用户的注意力导向特定元素,同时隐藏背景或转移对其他应用的注意力.因为W3C全屏规范还未达到最终版本,所以大多数浏览器供应商都使用唯一标识符为 API 添加前缀. ...

  3. jquery之val()和attr("value")

    1.attr("value")=原来的默认值 ,而val()=用户改变的值.

  4. php字符串截取问题

    希望将一个字符串限长显示,如果该字符串超过一定长数,就截取前n个字符,后加省略号. 但是在英文和汉字混合的情况下会出现如下问题: 如果有这样一个字符串  $str="这是一个字符串" ...

  5. recurse_array_change_key_case()递规返回字符串键名全为小写或大写的数组

    //递归返回字符串键名全为小写或大写的数组function recurse_array_change_key_case(&$input, $case = CASE_LOWER){    if( ...

  6. OC学习-1

    编译和编写代码. 1. 创建代码文件夹 mkdir lession2 2. 新建类文件 touch lession2.m 3. 打开编写代码,(会用xcode打开) open lession2.m 4 ...

  7. JAVA里的字符串,String 类简单介绍

    http://www.360doc.com/content/14/1107/23/17130779_423471141.shtml

  8. [转]Posix-- 互斥锁 条件变量 信号量

    这是一个关于Posix线程编程的专栏.作者在阐明概念的基础上,将向您详细讲述Posix线程库API.本文是第三篇将向您讲述线程同步. 互斥锁 尽管在Posix Thread中同样可以使用IPC的信号量 ...

  9. virtualenv python虚拟环境搭建

    python virtualenv.py flask

  10. Android无法连接adb的解决方法

    今天在折腾乐蛙时发现无法链接ADB了,但是手机却显示USB调试模式! 然后想起了大蛋曾经告诉我CM的解决方法,于是你懂得,俺差点就把菊花给卖了呢(/Д`)~゚。 adb shell rm -r /da ...