首先你得有个企业号!!!具体操作步骤可以参考http://itnihao.blog.51cto.com/1741976/1733245,里面写的很详细就不重复了。

  微信公众号注册并配置完成后,还需要让zabbix通过脚本实现微信告警,以下为本人使用的微信告警脚本

 [root@alertscripts]# cat weixin.sh
#!/bin/bash
#可在微信公众号的设置菜单 => 权限管理 => 选择发送告警信息的管理组即可看到CropID和Secret信息
CropID="XXXXX"
Secret="XXXXX"
GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret" #微信公众号接口
Gtoken=$(/usr/bin/curl -s -G $GURL | /bin/awk -F\" '{print $4}')                #根据填写的CropID和Secret获取发送信息的管理组的token
PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken"         #接收告警信息的微信接口
UserID1="@all"                                              #接收人ID,在微信公众号添加成员时自己填写的账号,建议以公司工号+姓名首字母组成
Msg=$3                                                  #zabbix传过来的告警信息正文 function body(){
local int AppID=1                #应用ID,即你创建的用来发送信息的应用,在应用中心 => 我的应用里可以找到
local UserID=$UserID1              #接收人ID,填写@all表示发给所有关注该公众号的用户
local PartyID=1 #部门ID
local Totag="@all" #标签ID
printf '{\n'
printf '\t"touser": "'"$UserID"\"",\n"
printf '\t"toparty": "'"$PartyID"\"",\n"
printf '\t"totag": "'"Totag"\"",\n"
printf '\t"msgtype": "text",\n'
printf '\t"agentid": "'" $AppID "\"",\n"
printf '\t"text": {\n'
printf '\t\t"content": "'"$Msg"\""\n"
printf '\t},\n'
printf '\t"safe":"0"\n'
printf '}\n'
} /usr/bin/curl --data-ascii "$(body)" $PURL #发送告警信息

把该脚本放到放在zabbix服务端相关目录下,笔者这里是/usr/local/share/zabbix/alertscripts

 [root@alertscripts]# chmod +x weixin.sh          #赋予执行权限
[root@alertscripts]# sh weixin.sh d d 测试 #如果微信接收到“测试”消息就算是成功了
{"errcode":,"errmsg":"ok","invalidtag":"all tag invalid"}

  然后是配置zabbix

1、创建告警内容

以下是笔者定制的告警内容,可供参考

警告:服务器 {HOSTNAME1} 出现异常 {TRIGGER.NAME}

告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:监控到{ITEM.NAME}为 :{ITEM.VALUE}
当前状态:异常
事件ID:{EVENT.ID} 请及时登录运维平台http://192.168.1.8:8888/dashboard.php进行处理! 特别声明:本邮件为系统告警程序自动发送,请勿回复!如有问题,请及时联系运维人员

2、添加微信到告警媒介

3、关联用户,这里接收人随便填,因为接收人已经在微信里配置好了,脚本也不接收该参数但这是必填项,所以这里填什么都可以

之后可以改一下触发器的阀值,测试微信的告警功能

最新文章

  1. EF操作多数据库
  2. C#基础-压缩文件及故障排除
  3. SQLite应用之实例代码
  4. oracle sqlplus 格式化输出
  5. 5、jvm内存回收——算法
  6. Zend studio 12.5.1安装aptana
  7. 缓存初解(四)---Ibatis的缓存配置+Ehcache
  8. Ganglia系列(一)安装
  9. 解决IE下Ajax请求无效
  10. Linux搭建Tomcat
  11. 201521123048 《Java程序设计》第14周学习总结
  12. system进程占用80端口
  13. php配置文件php.ini的详细解析(续)
  14. eclipse安装反编译decompiler方式一
  15. 2D转换与3D转换的区别
  16. php开发中遇到的一些问题
  17. [转]J-Link Commander的妙用
  18. 编写JavaScript 代码的5个小技巧
  19. LR监控linux系统资源
  20. HDUOJ----1165Eddy's research II

热门文章

  1. java写入excel文件poi
  2. JS 学习(三)DOM
  3. python2.7.9基础学习
  4. iOS中的round ceil floorf表示的含义
  5. THINKPHP中关于接口问题(客户端)
  6. avalon源码分析(转)
  7. php面试题目
  8. 灵活运用 SQL SERVER FOR XML PATH
  9. CentOS+Apache+mod_wsgi+Python+Django
  10. MongoDB的基础知识