1.1、先到企业微信官网注册
1.2、创建部门并将用户移动到创建的部门并记录部门ID(我这偷懒没创建所以部门ID为1)
1.3、在应用管理,应用,在自建分类里点击创建应用并记录下应用的AgentId和Secret
1.4、在此处找到企业ID
2.1、配置zabbix server服务端
先查看zabbix_server.conf配置文件中告警脚本存放位置(如果zabbix是默认编译安装的,脚本路径一般在/usr/local下)
Mon0001:~ #find /usr/local -name "alertscripts" /usr/local/zabbix/share/zabbix/alertscripts
2.2、创建微信告警API调用脚本(或者单击此处直接下载脚本)
Mon0001:~ #cd /usr/local/zabbix/share/zabbix/alertscripts vim weixin.sh #!/bin/bash CropID='*****************' #填写企业ID Secret='*****************************' #填写应用的Secret ID GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret" #Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" '{print $4}') Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" '{print $10}') PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken" function body() { local int AppID=1000003 #填写创建的应用ID local UserID=$1 #接收消息用户,系统传参,无需更改 local PartyID=1 #接收消息的部门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": "'" $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 $1 $2 $3)" $PURL
2.3、配置脚本权限
chown zabbix:zabbix weixin.sh chmod 755 weixin.sh
2.4、添加告警媒介
{ALERT.SENDTO} {ALERT.SUBJECT} {ALERT.MESSAGE}
2.5创建告警用户、添加报警媒介、权限
2.6、创建动作(触发器、操作动作、恢复动作)
标题内容: {HOST.NAME}产生告警! 消息内容: 告警服务器: {HOST.NAME} 服务器IP: {IPADDRESS} 告警服务器组: {TRIGGER.HOSTGROUP.NAME} 时间: {EVENT.DATE} {EVENT.TIME} 等级: {TRIGGER.SEVERITY} 信息: {TRIGGER.NAME} 详情: {ITEM.NAME}:{ITEM.VALUE} 状态: {TRIGGER.STATUS}:{ITEM.VALUE1} 事件 ID: {EVENT.ID}
标题内容: 问题持续时间{EVENT.DURATION}: {HOST.NAME}已恢复! 消息内容: 问题已在{EVENT.RECOVERY.DATE}-{EVENT.RECOVERY.TIME}恢复 恢复服务器组: {TRIGGER.HOSTGROUP.NAME} 恢复服务器: {HOST.NAME} 服务器IP: {IPADDRESS} 问题发生时间: {EVENT.DATE} {EVENT.TIME} 问题持续时间: {EVENT.DURATION} 等级: {TRIGGER.SEVERITY} 信息: {TRIGGER.NAME} 详情: {ITEM.NAME}:{ITEM.VALUE} 状态: {TRIGGER.STATUS}:{ITEM.VALUE1} 事件 ID: {EVENT.ID}
2.7、触发告警测试
与此同时企业微信收到测试消息