Zabbix默认一般配置监控通知方式是的邮件告警,对于重要应用可能还需要增加其他方式的告警。下面就介绍如何添加微信告警。微信报警的脚本有很多,博主现成找了一个,所以就没有自己写了,脚本用python编写。很早之前也有介绍过nagios微信告警的配置,原理都差不多,可以参考 。
Zabbix添加微信告警的步骤主要有三步,分别是:
1、注册企业微信,创建zabbix应用
2、配置微信告警脚本
3、整合zabbix
一、注册企业微信
地址:https://work.weixin.qq.com/
没有营业执照也可以注册,注册后创建一个zabbix应用。
企业号上有几个重要信息需要记录,脚本需要使用。
企业ID(Corpid):在“我的企业”-> “企业信息”页面可以找到
应用ID(Agentid):在“应用与小程序”-> 创建的“zabbix告警”可以找到。
应用密钥(Secret):在“应用与小程序”-> 创建的“zabbix告警”可以找到。
可以先用这个应用给自己发送一个测试消息,能收到就可以。
如果需要添加用户,邀请用户且需关注企业。注意这里的帐号和zabbix人员media的配置要一致,不是用户的微信号,zabbix配置最后会讲。
二、配置微信脚本
打开zabbix_server.conf配置文件,取消AlertScriptsPath的注释。
例如:
AlertScriptsPath=/usr/lib/zabbix/alertscripts
下载脚本到/usr/lib/zabbix/alertscripts目录,脚本地址:
cd /usr/lib/zabbix/alertscripts wget https://raw.githubusercontent.com/zhangnq/zabbix/master/alertscripts/wechat.py chmod +x wechat.py systemctl restart zabbix-server.service # 安装requests模块 pip install requests # 创建微信企业号token临时文件目录 mkdir /usr/lib/zabbix/var chown zabbix.zabbix /usr/lib/zabbix/var
修改wechat.py,最后Corpid,Secret和Agentid改成第一步自己的。
脚本临时文件存放在/usr/lib/zabbix/var目录,如果用root测试过脚本请删除临时文件,否则zabbix调用会出现权限错误。
三、配置zabbix
media中增加微信告警方式。
上图Script parameters表示调用脚本时向脚本传入什么参数。
{ALTER.SENDTO} # 发送给谁
{ALTER.SUBJECT} # 告警标题
{ALTER.MESSAGE} # 告警内容
zabbix的user的media中添加微信告警人。
这里的send to名就要和微信企业号通讯录里的帐号名一样。
到这里zabbix监控的微信告警功能就增加好了。
其他有关zabbix自定义脚本参考:https://github.com/zhangnq/zabbix
nagios 微信报警:http://blog.nbqykj.cn/?p=2372.html