环境简介
CentOS Linux release 7.2.1511 (Core) X64
zabbix-web-mysql-3.4.3-1.el7.noarch
zabbix-get-3.4.3-1.el7.x86_64
zabbix-web-3.4.3-1.el7.noarch
zabbix-server-mysql-3.4.3-1.el7.x86_64
zabbix-agent-3.4.3-1.el7.x86_64
开始配置
一,申请企业微信
传送门https://work.weixin.qq.com/,按照要求填写,申请成功即可,我这边有现成的,无需申请了
二,创建部门,并记录部门id用于发送信息
红色为添加子部门
部门ID这里用于发送信息使用
三,记录个人信息(用于给个人发送信息)
账号为给单个成员发送信息的id
四,添加应用
创建成功后记录Agentid与Secret,用于发送token的获取
可见范围为能够看到信息的人或群组
五,记录Corpid
六,接口测试信息,有兴趣可以自行测试
接口调试工具:http://work.weixin.qq.com/api/devtools/devtool.php
接口说明文档:https://work.weixin.qq.com/api/doc#10167
七,报警脚本
1,使用python脚本,对部门发送信息
vi /etc/zabbix/alertscripts/weixin.py
#!/usr/bin/python
# -*- coding: utf-8 -*-
# zabbix notification confirmation script
# python2.7 or above
import requests
import json
import os
import sys
Toparty = "1842015725" #部门id
AgentID = 1000003 #应用id
#修改为企业CropID和Secret
CropID = 'ww08dd03fec7777231'
Secret = '9LTp1b-LVMgXDr1_6Hmx1f7QEPI4w4Hidg_oTbk415I'
#获取Token
Gtoken ="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=" + CropID + "&corpsecret=" + Secret
headers = {'Content-Type': 'application/json'}
json_data = json.loads(requests.get(Gtoken).content.decode())
token = json_data["access_token"]
#消息发送接口
Purl = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=" + token
#消息发送函数
def msg(title,message):
weixin_msg = {
"toparty" : Toparty,
"msgtype" : "textcard",
"agentid" : AgentID,
"textcard" : {
"title" : title,
"description" : message,
"url" : "www.wzlinux.com",
"btntxt":"更多"
}
}
print requests.post(Purl,json.dumps(weixin_msg),headers=headers)
if __name__ == '__main__':
title = sys.argv[1] #获取第一个参数
message = sys.argv[2] #获取第二个参数
msg(title,message)
chmod 755 /etc/zabbix/alertscripts/weixin.py
测试
/etc/zabbix/alertscripts/weixin.py 1 2
所在组的成员就可以收到告警信息了
配置zabbix报警信息
创建action
正常就可以收到告警了
2,通过企业微信给个人发送信息
wget https://raw.githubusercontent.com/OneOaaS/weixin-alert/master/weixin_linux_amd64 cp -rf weixin_linux_amd64 /etc/zabbix/alertscripts/weixin chown 755 /etc/alertscripts/weixin chown zabbix:zabbix /etc/zabbix/alertscripts/weixin
测试
/etc/zabbix/alertscriptsweixin –corpid=xxxxxxxxxx
corpsecret=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx –msg=”您好告警测试” –user=xxxxxxxxxxx –agentid=xxxxxxxxxxxxx
返回数据:
{“errcode”:0,”errmsg”:”ok”,”invaliduser”:”“}
zabbix告警配置
配置的user就可以收到告警信息了









