您的位置:首页 > Web前端

nagios + fetion短信机器人报警配置

2012-12-13 11:25 148 查看
nagios的安装配置见他人写的文章
飞信机器人官方首页:http://www.it-adv.net/index.php?action=index
下载页面及配置说明:需要回复才可以看到下载文件Linux下只是编译好的单个文件,只有几百KB,大家不要对这个文件有所疑问我当时也是带着怀疑的态度去下载的http://bbs.it-adv.net/viewthread.php?tid=1081
因为我的nagios是配置Linux (rhel 5.4)下的,我下载的fetion依赖包是linux上面写的依赖包是在rhel 4下编译的,我在5.4下测试通过(在Redhat4 下编译,其它LINUX发行版的朋友请测试)linux版本:http://www.it-adv.net/fetion/linuxso_20101113.rar
注意:linux用户,请不要把支持库中的 lib* 复制到 /usr/lib 下,因为发行版本不同,可能会覆盖您机器中的核心库,导致严重系统问题。您可以把库解压到主程序的相同目录,然后以 LD_LIBRARY_PATH=. ./fetion 来运行,两点间有空格
然后把下载好的软件上传到nagios server 服务器上
1. 权限设置]# chmod 775 fetion
2. 所属用户设置因为我的nagios 程序启动用户是nagios,而我的fetion文件夹所属的用户&组是root我要修改为nagios,不然程序报警时,调用fetion时会报错,好像是时间啥错误]# chown -R nagios:nagios fetion
目录列表:


3. 测试1)进入fetion文件夹]# cd /opt/fetion]# D_LIBRARY_PATH=. ./fetion --mobile=飞信号&手机号 --pwd=飞信密码(不是卡号密码) --to=发送的人(可以用自己的手机测试) --msg-utf8=测试 --debug最后输入看到的图形验证码,我是把图片ftp到本机打开的说明:D_LIBRARY_PATH=. 调用飞信依赖包,前提是要进入fetion所在目录 ./fetion 调用fetion脚本--debug 如果第一次执行,不加上这个参数,脚本会执行失败,没有任何提示,短信也发送失败,因为现在的fetion版本,会弹出弹出图形验证码;但是不加debug参数,图形验证码出不来。据说是官方飞信服务器需要的,不是程序的行为。
在切换到nagios帐号下,测试飞信发送是否成功
自己写个小脚本,注释就不写了,脚本名称sms.sh#!/bin/bash

usr=137********

pwd=*******

receive_number=*********

cd /opt/fetion && \

D_LIBRARY_PATH=. ./fetion --mobile=${usr} --pwd=${pwd} --to=${receive_number} --msg-utf8="$1" --debug

nagios 配置文件commands.cfg中添加如下###################################################################

# notify-host-by-sendmsg/notify-service-by-sendmsg

###################################################################

define command {

command_name notify-host-by-fetion

command_line /opt/fetion/sms.sh "Host $HOSTSTATE$ alert for $HOSTNAME$($HOSTADDRESS$) on $TIME$."

}

define command {

command_name notify-service-by-fetion

# command_line /opt/fetion/sms.sh ""$TIME$":$SERVICEDESC$($HOSTADDRESS$) is $SERVICESTATE$."

command_line /opt/fetion/sms.sh "$LONGDATETIME$:$HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$.$SERVICEOUTPUT$"

}

nagios 配置文件contacts.cfg 中添加如下
[root@**** objects]# more contacts.cfg

define contact{

contact_name sa

alias system administrator

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,notify-service-by-fetion

host_notification_commands notify-host-by-email,notify-host-by-fetion
至此,整个nagios + fetion 配置就完成了,我们可以手动停止监控的程序,等等看看fetion是否报警本文出自 “为技术而痴狂” 博客,请务必保留此出处http://ontherd.blog.51cto.com/2062140/1087790
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: