之前的文章中已经实现了zabbix 邮件告警和微信告警,生产环境上测试出消息抵达很及时,但是!万一服务器在大半夜突发故障微信、邮件这些通知都是废物了,大晚上还能听到微信通知吗?显然不可能(我的某朋友就因为这事到处找语音告警,推荐onealert 给他后实现了晚上电话告警)。
  onealert 官方有提供两种方式的文档,一个是一键安装包,但是显然对于自定义安装zabbix的情况不太合适,使用通用安装方式实现了对接:http://wiki.110monitor.com/integration/zabbix-manual.html
  官方的这篇文档有个坑,这个agent是需要手动启动的!需要运行 alert-agent/bin/start.sh 脚本启动官方提供的客户端。

  1. [root@aliyun bin] /usr/local/zabbix/alertscripts/alert-agent/bin/start.sh &

  如果是这样的方式何必写这文章呢,这里是自己写了个非常非常简单的脚本通过对接开放API 推送消息进行告警(类似微信方式):

一:添加REST API应用获取key:

1.添加REST API应用 后可以获取到对应的key 并且下方有事例信息,看了下流程就是把一段json 内容通过post 方式传递到API 服务器即可。

2.配置通知策略为电话告警:

二:zabbix 配置:

这里基本和邮件报警类似:《zabbix 配置邮件报警 》
1. 在alertscripts 目录创建脚本文件:
  zabbix 传入参数message ,脚本获取参数写入到文件onealert 中暂存,curl 使用post 方式将文件onealert 中的值传到API 服务器。

  1. [root@aliyun ~] cd /usr/local/zabbix/alertscripts
  2. [root@aliyun alertscripts] vim onealert.sh
  3. #!/bin/bash
  4. POSTURL="http://api.110monitor.com/alert/api/event"
  5. onea=/tmp/onealert
  6. echo "$1" >$onea
  7. curl -H "Content-type: application/json" -X POST -d @$onea $POSTURL
  8. [root@aliyun alertscripts] chown zabbix.zabbix onealert.sh
  9. [root@aliyun alertscripts] touch /tmp/onealert
  10. [root@aliyun alertscripts] chown zabbix.zabbix /tmp/onealert

2. 配置zabbix 报警媒介和动作:
  这里的参数只填写{ALERT.MESSAGE} 即可


3.配置用户通知:
  收件人 也就是Send to 随意填写,因为收件人信息稍后会写到message 里面,通知时间这里,语音告警一般用于晚上,所以可以设置为00:00-07:00时间段。


4.配置动作:
  app 处填写应用KEY ,详细参数请参看官方文档:http://wiki.110monitor.com/api/event_api.html
Default subject 填写trigger

  1. {
  2. "app": "xxxxxxxxxxxxxxxxxxxxx",
  3. "eventId": "{EVENT.ID}",
  4. "eventType": "trigger",
  5. "alarmName": "{TRIGGER.NAME}",
  6. "entityName": "{HOSTNAME}",
  7. "entityId": "{IPADDRESS}",
  8. "priority": 3,
  9. "alarmContent": "{IPADDRESS} {ITEM.NAME}:{ITEM.VALUE}"
  10. }

Recovery subject 填写resolve

  1. {
  2. "app": "xxxxxxxxxxxxxxxxxxxxx",
  3. "eventId": "{EVENT.ID}",
  4. "eventType": "resolve",
  5. "alarmName": "{TRIGGER.NAME}",
  6. "entityName": "{HOSTNAME}",
  7. "entityId": "{IPADDRESS}",
  8. "priority": 3,
  9. "alarmContent": "{IPADDRESS} {ITEM.NAME}:{ITEM.VALUE}"
  10. }



  好了,配置完了,模拟故障测试一下看看情况,如果在onealert 的告警中已经看到告警任务,电话告警配额也已经消耗了一条(免费用户每月50个电话通知),但是没有电话打进来,可以换个号码测试一下,之前一个朋友测试到电信号码不成功,换移动号后正常了。

zabbix 语音告警的更多相关文章

  1. zabbix邮件告警

    Zabbix邮件告警看了很多文档,写的那叫一个蛋疼,明明没有发出去邮件,硬要糊弄观众,我也跟着被糊弄. 操作系统环境: CentOS 5.5 x84_64位 Zabbix版本2.2.3 Web服务器: ...

  2. 通过python为zabbix发送告警邮件

    最近部署ZABBIX的邮件告警时,用刚学的python来写告警邮件脚本. 由于时间有限,我只对关键步骤做截图,对zabbix的基本配置略过. python代码如下 1 #!/usr/bin/pytho ...

  3. zabbix监控告警Received empty response from Zabbix Agent Assuming that agent dropped connection

    zabbix监控告警Received empty response from Zabbix Agent Assuming that agent dropped connection错误 查看zabbi ...

  4. zabbix邮件告警之 通过shell脚本发送告警

    说明:本文讲如何通过shell脚本实现zabbix发送告警邮件,共有5步1.设置mailx账号:是配置mailx的发信账号2.zabbix服务器端编写邮件发送脚本:是增加zabbix的告警方式,增加通 ...

  5. zabbix:告警、恢复消息次数

    之前zabbix配置告警,存在告警信息发送多次并且恢复信息也跟着发送多次了,导致企业微信流量不够用,没有找到恢复信息单独的设置项 动作中的步骤我个人理解为:1-5的意思是发送5条告警消息      3 ...

  6. Zabbix微信告警

    Zabbix微信告警 摘要 Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbix结合微信作为主要的告警方式,这样可以及时有效的把告警信 ...

  7. zabbix 微信告警配置

    作者信息 邮箱:sijiayong000@163.com Q Q:601566386 Zabbix 微信告警 摘要:Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是 ...

  8. Zabbix邮箱告警

    一.安装邮箱 yum install mailx 二.配置邮箱 vim /etc/mail.rc set from=875667601@qq.com set smtp=smtp.qq.com set ...

  9. zabbix微信告警实践

    首先你得有个企业号!!!具体操作步骤可以参考http://itnihao.blog.51cto.com/1741976/1733245,里面写的很详细就不重复了. 微信公众号注册并配置完成后,还需要让 ...

随机推荐

  1. 调用URL 接口服务

    1.Net调用URL 接口服务 using System; using System.Collections; using System.Configuration; using System.Dat ...

  2. 【洛谷T37388】P哥破解密码

    原题图: 看到这个题,首先想到的当然是暴力打表找规律了 表: 1 2 2 4 3 7 4 13 5 24 6 44 7 81 8 149 9 274 10 504 11 927 12 1705 13 ...

  3. Kinect骨架数据

  4. GoBelieve IOS SDK接入备忘

    项目配置 在工程target的"Build Settings"中,找到"Linking"的"Other Linker Flags",添加参数 ...

  5. %ROWTYPE在INSERT和UPDATE语句里的妙用

    PL/SQL里的ROWTYPE类型具有非常大的用处和灵活性,现在发现ROWTYPE在insert和update语句里的妙用,可以节省很多代码,特别是在行copy和更新的时候. 在INSERT语句中: ...

  6. ABAP术语-BAPI Explorer

    BAPI Explorer 原文:http://www.cnblogs.com/qiangsheng/archive/2007/12/24/1012110.html Tool for developi ...

  7. CentOS上安装oracle11g报错处理

    ​ 最近,在处理oracle gateway的报错问题.只因个人的测试环境已经迁移到docker上了,又懒得装一套环境就直接在机器上安装oracle11g.今天分享的故事就从此开始-- 运行环境 项目 ...

  8. 【MYSQL笔记3】MYSQL过程式数据库对象之存储过程的调用、删除和修改

    mysql从5.0版本开始支持存储过程.存储函数.触发器和事件功能的实现. 我们以一本书中的例题为例:创建xscj数据库的存储过程,判断两个输入的参数哪个更大.并调用该存储过程. (1)调用 首先,创 ...

  9. 在Closing事件中,将e.Cancle设置成true,则Windows无法关机和重启系统的解决办法

    最近在设计一个WinForm程序的时候遇到一个bug,就是From1窗体的关闭事件中设置了e.Cancle设置成true,导致系统无法关机重启,windows7 和windows xp都是这样. 我这 ...

  10. 【Linux】wget: command not found的两种解决方法

    1.rpm 安装 下载wget的RPM包: http://mirrors.163.com/centos/6.8/os/x86_64/Packages/wget-1.12-8.el6.x86_64.rp ...