一、 软件环境:cacti(需Threshold插件),MSN机器人(SendMsg)
三、 配置过程:
1.启用thold
2.编辑cacti/plugins/thold/thold-functions.php
在thold–functions.php查找thold_mail($global_alert_address, ”, $subject, $msg, $file_array);行在此行下面加入:
exec("echo $subject >>/var/www/html/cacti/plugins/thold/alter.log");
exec("sh /var/www/html/cacti/plugins/thold/sendmessage.sh");
查找 thold_mail($item["notify_extra"], ”, $subject,
$msg, $file_array);行在此行下面加入:
exec("echo $subject >>/var/www/html/cacti/plugins/thold/alter.log");
exec("sh /var/www/html/cacti/plugins/thold/sendmessage.sh");
备注:本人的thold安装在/var/www/html/cacti/plugins/thold/目录中,如果注释掉thold_mail,只通过MSN发送报警。不注释掉thold_mail,会通过email和MSN同时发送报警
thold-functions.php生成的alter.log范例如下:
192.168.1.207 - Used Space - G: Label: [hdd_percent] is still above threshold of 85 with 99
编写脚本sendmessage.sh自动调用SendMsg发送报警
#!/bin/sh
echo `echo -n "date:"&&date +%Y-%m-%d-%H:%M` >> /var/www/html/sendMsg/msn.txt.1
#得到当前的日期+时间
cat /var/www/html/cacti/plugins/thold/alter.log >>/var/www/html/sendMsg/msn.txt.1
#读取alter.log的报警信息
now=`date +%Y-%m-%d-%H:%M`
SA=(disk)
msnaddr=(lvming104@hotmail.com) #报警接收人msn
sendMsg()
{
num=0
while [ $num -lt 1 ];
do
wget --post-data "sender=test@live.cn&password=12346&recipient=${1}&message=${2}" http://127.0.0.1/sendMsg/index.php -O /var/www/html/sendMsg/index.php.1 >/dev/null 2>&1
#sender:发送人msn,password:密码。/var/www/html/sendMsg为sendMsn安装目录
if [ -f /var/www/html/sendMsg/index.php.1 ]; then
if cat /var/www/html/sendMsg/index.php.1 |grep -i successfully >/dev/null 2>&1;then
num=1 #判断信息发送成功
elif cat /var/www/html/sendMsg/index.php.1 |grep -i "The user appears to be offline" >/dev/null 2>&1;then
num=1 #判断msn接受人为是否在线状态
echo "The user is offline."
exit 0
elif cat /var/www/html/sendMsg/index.php.1 |grep -i "Something went wrong trying to connect to the server" >/dev/null 2>&1;then
num=1 #判断msn 服务器存在连接问题
echo "MSN server is wrong."
exit 0
else
num=0 #除了以上三种情况退出循环外,其他情况重试。
fi
rm -f /var/www/html/sendMsg/index.php.1
else
num=0
fi
done
}
 
mv /var/www/html/sendMsg/msn.txt /var/www/html/sendMsg/bak/msn$now.txt -f 1>/dev/null 2>&1
mv /var/www/html/sendMsg/msn.txt.1 /var/www/html/sendMsg/msn.txt -f 1>/dev/null 2>&1
rm /var/www/html/cacti/plugins/thold/alter.log -f 1>/dev/null 2>&1

for i in 0
do
if cat /var/www/html/sendMsg/msn.txt ; then
messages=`cat /var/www/html/sendMsg/msn.txt ` #读取要发送的信息
sendMsg "${msnaddr[$i]}" "$messages" #发送报警信息
else
continue
fi
done

ok,配置完成了,现在就可以通过MSN接收报警信息了:如下所示
下次更新Cacti实现短信报警,敬请期待

在Cacti上实现MSN报警机制相关推荐

  1. Zabbix报警机制 、 Zabbix进阶操作 、 监控案例

    一.zabbix报警机制 (邮件 短信 微信 即时消息 ) 概念介绍: 自定义的监控项默认不会自动报警 首页也不会提示错误 需要配置触发器与报警动作才可以自定报警 触发器(trigger) –表达式, ...

  2. zabbix监控的报警机制

    目录 一.概念介绍 二.配置邮件报警功能 1.获取邮箱的客户端授权码 2.配置邮箱功能 3.在服务器WEB页面配置 (1)定义报警媒体类型 (2)指定使用用户 (3)添加被监控端 (4)配置触发动作和 ...

  3. zabbix添加邮件报警机制

    zabbix添加邮件报警机制 作者:尹正杰 还记得之前跟大家聊过的一个如何监控一个目录的话题吗?我们虽然监控出来数据了,也有数据了,但是,只是监控也没有用啊~因为我们不能24小时盯着屏幕然后 出了事情 ...

  4. 监控软件Zabbix之配置139邮箱报警机制

    上篇文章讲解了Zabbix的安装与配置,这篇文章继续讲解如何配置邮件报警机制:当被监控的主机出现问题时会及时地给管理员发送邮件,及时地通知运维人员. 在此之前zabbix服务端和客户端都已经配置好了, ...

  5. 互联网金融平台——银行交易明细查询和报警机制

    一.关于前置机的报警机制:     1 .通道组每日巡检前置机的运行是否出现假死等问题,巡检每两个小时一次,上午 10 点至晚八点:     2 . 关键词监控,已经出现过假死的前置机或者 usb 不 ...

  6. zabix配置报警机制

    文章目录 概念介绍: 环境配置 配置客户端 配置templates 配置邮件报警 配置报警机制和邮件结合 添加用户管理 配置邮箱格式 测试报警机制 概念介绍: 自定义的监控项默认不会自动报警 首页也不 ...

  7. 2009年8月26日,用于win2003上的MSN不能正常使用

    2009年8月26日. 也就是昨天咯. XP下的MSN完全正常,没有任何的异样. 但是,一大早,就有同事抱怨,他的MSN被强制更新,不更新就不能登录,更新之后却又报错.统计了一下,出现这个问题的,都是 ...

  8. Cacti auth.php,Cacti微信企业号图文报警

    首先申请企业号获取对应应用中的CropID和Secret以及应用ID 这部分后面再进行添加 也可参考 http://wuhf2015.blog.51cto.com/8213008/1688614 中的 ...

  9. 经典MapReduce作业和Yarn上MapReduce作业运行机制

    一.经典MapReduce的作业运行机制 如下图是经典MapReduce作业的工作原理: 1.1 经典MapReduce作业的实体 经典MapReduce作业运行过程包含的实体: 客户端,提交MapR ...

最新文章

  1. 基于X的GNOME、GTK、GDK、XLib、GLib等之间的关系
  2. PHP 通过fsockopen函数获取远程网页源码
  3. REdis AOF文件结构分析
  4. 2020CCPC(长春) - Ragdoll(启发式合并+带权并查集)
  5. PCRE接口pcre_fullinfo混合子模式调用结果
  6. 在.NET Core中使用Channel(一)
  7. mega5安装包_[MEGA DEAL] 2017年完全Java捆绑包(95%折扣)
  8. [NOI2014] 起床困难综合症
  9. 编辑电线标注及图纸上从主电源线上引出多条支路时如何进行线号的编写?
  10. linux内存管理(十一)-页回收总览
  11. 判断 失效_复合材料渐进失效Hashin模型及参数详解
  12. Python读写Excel简单案例及调试说明文档
  13. 独立团-手游脱机封包辅助课程(完整版)
  14. Photoshop 抠图方法
  15. 快速破解基于linux内核的开源路由器后台管理登录密码
  16. matlab函数anova,MATLAB进行单因素方差分析——ANOVA
  17. 手表上发条的方法?雷诺手表如何上发条?
  18. 关于final修饰的变量赋值的问题
  19. 「镁客早报」屠呦呦入选“20世纪最伟大人物”;四部门联合治理APP违法收集使用个人信息...
  20. 为什么android没有iOS流畅,安卓系统为什么没有IOS流畅,原因究竟出在哪?

热门文章

  1. 探究oracle clob字段是怎样存储的
  2. linux下利用openssl来实现证书的颁发(详细步骤)--转载和修改
  3. H5学习系列之Communication API
  4. 有漏洞无作为才可怕、可耻!
  5. XE3随笔6:SuperObject 的 JSON 对象中还可以包含 方法
  6. WPF中的动画——(六)演示图板
  7. 关于Block Formatting Context--BFC和IE的hasLayout
  8. ASP.NET MVC 3 Razor 多国语言参考解决方案 补充四
  9. shinyapps安装
  10. 七天学习计划_c#_[2][3][4][5]委托、事件、委托与事件的区别、泛型委托、Func\Action\predicate