配置zabbix通过微信报警企业微信报警

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 '{
'
        printf '	"touser": "'"$UserID""",
"
        printf '	"toparty": "'"$PartyID""",
"
        printf '	"msgtype": "text",
'
        printf '	"agentid": "'"$agentid""",
"
        printf '	"text": {
'
        printf '		"content": "'"$Msg"""
"
        printf '	},
'
        printf '	"safe":"0"
'
        printf '}
'
}
/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_proxyhttp://www.cnblogs.com/LuckWJL/p/9055587.html

zabbix安装配置agent程序之agent配置文件详解:http://www.cnblogs.com/LuckWJL/p/9055912.html

配置zabbix_server通过zabbix_proxy进行监控Hosthttp://www.cnblogs.com/LuckWJL/p/9056195.html

原文地址:https://www.cnblogs.com/chuyiwang/p/9076510.html