博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nagios利用fetion发送报警
阅读量:5931 次
发布时间:2019-06-19

本文共 2848 字,大约阅读时间需要 9 分钟。

系统升级公告(2010.11.26)

发布时间:2010-11-25尊敬的用户:
为了给您提供更完善的服务,系统于2010年11月26日凌晨0:00-3:00进行升级操作。在升级期间,飞信客户端无法使用。
我们会在此时段内尽快完成升级操作恢复至业务能够正常使用。对此给您带来的不便我们深表歉意,再次感谢您对此次升级的支持和谅解。期待您一如既往的关注飞信!
飞信官方网站
2010-11-25
由于飞信版本升级, 再次无法使用,有的开源版本需要输入验证码。经过http://code.google.com/p/pytool 的努力 cocobear.cn 更新了版本,不需要加载RSA_Encrypt.so 模块了·直接用源码就可以·在cocobear.cn的版本上我稍微修改了下,让其支持nagios报警

1.下载修改飞信:

nagios $> svn checkout http://pytool.googlecode.com/svn/trunk/ pytool-read-onlynagios $> cd pytool-read-onlynagios $> cd PyFetion
nagios $> vim fetion.py
#在 385 行处修改:def main(argv=None):    #mobile_no = raw_input(toEcho("手机号:"))    mobile_no = argv[1]       #手机号    #passwd = getpass(toEcho("口  令:"))    passwd = argv[2]           #飞信密码    mes = argv[3]                #发送消息    tohe = argv[4]               #其他人手机号# 找到412 行后修改:      phone.send_sms(toUTF8(mes))        phone.send_sms(toUTF8(mes),tohe)        printl("发送成功")        #printl("登陆成功")        return 1#找到最后一行 443行,修改:     #sys.exit(main())     sys.exit(main(sys.argv))修改完后 保存退出

2.测试发信息。

nagios $> python fetion.py 1361103xxxx password test none## 命令为:手机号 飞信密码 发送信息  别人手机号,由于我只给自己发信息,所以我这里参数为none 不给别人发

3.创建脚本方便nagios发送报警

nagios $> mkdir -p /opt/fetionnagios $> cd /pytool-read-only/PyFetionnagios $> mv * /opt/fetionnagios $> chown nagios.nagios /opt/fetion -R   #赋予nagios可执行权限nagios $> cd /usr/local/nagios/libexec
nagios $> vim sms.sh
#!/bin/bash# script name : sms# qq: 277057817# url:www.nginxs.comif [ $# -ne 5 ];then            phone="$1"            passwd="$2"            msg="$3"            sendto="$4"            /usr/bin/python /opt/fetion/fetion.py "$phone" "$passwd" "$msg" "$sendto"fi
nagios $> ./sms.sh 1361103xxxx password test none

4.修改templates.cfg 添加:

nagios $> vim /usr/local/nagios/etc/objects/templates.cfg
define contact{name                            generic-contactservice_notification_period     24x7host_notification_period        24x7service_notification_options    w,u,c,r,f,shost_notification_options       d,u,r,f,sservice_notification_commands   notify-service-by-email,notify-service-by-smshost_notification_commands      notify-host-by-email,notify-host-by-smsregister                        0}

5.修改commands.cfg 添加:

nagios $> vim /usr/local/nagios/etc/objects/commands.cfg

 

define command{command_name    notify-host-by-smscommand_line    $USER1$/sms.sh 1361103xxxx password  "Host $HOSTSTATE$ alert for $HOSTNAME$! on '$LONGDATETIME$'" 1380010XXXX}define command{command_name    notify-service-by-smscommand_line    $USER1$/sms.sh 1361103xxxx password  "Host $HOSTSTATE$ Address $HOSTADDRESS$ Service $SERVICEDESC$ State $SERVICESTATE$ on $TIME$"  1380010XXXX}

6.下面是我修改后的版本以及脚本

pyfetion for nagios 飞信

 

PS:记得如果自己修改fetion.py 的时候,记得tab键,和空格键的区别,pytion 不像shell一样不区分tab和空格键的。

pyfetion 全是用的空格,所以修改 fetion.py的时候要用空格,不要用tab..

本文转自Deidara 51CTO博客,原文链接:http://blog.51cto.com/deidara/436140,如需转载请自行联系原作者

你可能感兴趣的文章
C#代码安装、卸载、监控Windows服务
查看>>
2014年抢票总结
查看>>
zephir开发的扩展“wudimei框架”之模板词法扫描(三)完成代码切分
查看>>
ML 线性回归Linear Regression
查看>>
【转载】SweetAlert2 使用
查看>>
oracle如何用sql查看触发器?
查看>>
如何对HashMap按键值排序
查看>>
test
查看>>
IIS负载均衡-Application Request Route详解第二篇:创建与配置Server Farm
查看>>
js/jquery/插件表单验证
查看>>
Bandwidth内存带宽測试工具
查看>>
为Node.js编写组件的几种方式
查看>>
(轉貼) Anders Hejlsberg談C#、Java和C++中的泛型 (.NET) (C#)
查看>>
30天敏捷结果(24):恢复你的精力
查看>>
JNI——访问数组
查看>>
C#开发和调用Web Service
查看>>
Android6.0机型上调用系统相机拍照返回的resultCode值始终等于0的问题
查看>>
全面理解Git
查看>>
JS敏感信息泄露:不容忽视的WEB漏洞
查看>>
让我们荡起双桨,Android 小船波浪动画
查看>>