https://work.weixin.qq.com/api/doc#10013
第一个要记录的值:部门ID:35
选择企业应用
选择创建应用
自定义填
创建应用后退出,点击刚才创建的应用进入
记录下这两个值:AgentId、Secret
然后选择企业
记录值:CorpId
可以使用企业微信的API接口测试一下
http://work.weixin.qq.com/api/devtools/devtool.php
返回值如下即为OK,可以写脚本引用
若返回错误代码请参考
https://work.weixin.qq.com/api/doc
https://work.weixin.qq.com/api/doc#10649
写脚本:
[root@check1 alertscripts]# pwd
/usr/local/zabbix/share/zabbix/alertscripts
[root@check1 alertscripts]# vim wechat.sh
#!/bin/bash
#set -x
#运维工程师 王初一
CorpID="********" #我的企业下面的CorpID
Secret="***************" #创建的应用那有Secret
GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CorpID&corpsecret=$Secret"
Token=$(/usr/bin/curl -s -G $GURL |awk -F\": \'{print $4}\'|awk -F\" \'{print $2}\')
#echo $Token
PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Token"
function body(){
local int agentid=1000066 #改为AgentId 在创建的应用那里看
local UserID=$1 #发送的用户位于$1的字符串
local PartyID=35 #第一步看的通讯录中的部门ID
local Msg=$(echo "$@" | cut -d" " -f3-)
printf \'{\n\'
printf \'\t"touser": "\'"$UserID"\"",\n"
printf \'\t"toparty": "\'"$PartyID"\"",\n"
printf \'\t"msgtype": "text",\n\'
printf \'\t"agentid": "\'"$agentid"\"",\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 $1 $2 $3)" $PURL
[root@check1 alertscripts]# grep alertscripts /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
告警测试:
[root@check1 alertscripts]# bash wechat.sh WangJinLong 告警测试 注意这是一条告警测试信息
{"errcode":0,"errmsg":"ok","invaliduser":""}
测试没有问题,开始配置zabbix
选择创建用户
添加报警媒介
权限可以看情况分配,我这自己用可以给大一点
选择报警媒介类型
创建媒体类型 别忘点“更新”
选择配置-动作
创建动作
默认接收人:
故障:{TRIGGER.STATUS},服务器:{HOSTNAME1}发生:{TRIGGER.NAME}故障!
默认信息:
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件标识:{EVENT.ID}
Recovery operations
默认接收人:
恢复:{TRIGGER.STATUS}, 服务器:{HOSTNAME1}:{TRIGGER.NAME}已恢复!
默认信息:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
将zabbix_server的agent关闭看是否报警,然后再启动看是否有恢复通知
zabbix分布式监控系统安装配置:http://www.cnblogs.com/LuckWJL/p/9037007.html
安装配置zabbix代理之zabbix_proxy:http://www.cnblogs.com/LuckWJL/p/9055587.html
zabbix安装配置agent程序之agent配置文件详解:http://www.cnblogs.com/LuckWJL/p/9055912.html
配置zabbix_server通过zabbix_proxy进行监控Host:http://www.cnblogs.com/LuckWJL/p/9056195.html