1.注册企业微信
打开链接注册企业微信(实名制)
企业信息可根据你自己企业进行设置
https://work.weixin.qq.com/wework_admin/register_wx?from=0010500502
企业信息可根据你自己企业进行设置
https://work.weixin.qq.com/wework_admin/register_wx?from=0010500502
2.创建应用
注册完成之后,在应用管理中,创建应用
3.填写应用信息
填写应用信息
可见范围选择整个系统部门
可见范围选择整个系统部门
4.查看四个ID信息
查找这四个信息,在后面写脚本需要填写这四个信息
5.编写脚本
[root@zabbix-server ~]# vim /usr/lib/zabbix/alertscripts/weixin.sh [root@zabbix-server ~]# cat /usr/lib/zabbix/alertscripts/weixin.sh #!/bin/bash CropID='ww452669cf8d3cd473' #企业ID Secret='ANtAh0BsAB7F8F6RJJTkO8m2l_lsMem0taT9WpVpzyk' #Secret值 GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret" 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 #企业号中的应用AgentId值 local UserID=$1 #部门成员id,zabbix中定义的微信接收者 local PartyID=1 #部门id,定义了范围,组内成员都可接收到消息 local Msg=$(echo "$@" | cut -d" " -f3-) #过滤出zabbix中传递的第三个参数 printf '{\n' printf '\t"touser": "'"$User"\"",\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
这四个值填写你自己的,刚才让你查找的,要一一对应
6.手机扫你自己的企业二维码并关注
在我的企业,微信插件中,找到邀请关注的二维码,使用你自己的手机扫一扫,即可在微信进入你的企业应用了。
7.使用命令测试报警发送给微信
先在通讯录系统中查找管理成员的账号(也就是成员ID)
./weixin.sh 为执行脚本
LiXian 为成员ID
1 为部门ID
测试–哈哈 为测试内容
./weixin.sh 为执行脚本
LiXian 为成员ID
1 为部门ID
测试–哈哈 为测试内容
[root@zabbix-server ~]# cd /usr/lib/zabbix/alertscripts/ #给脚本赋予执行权限 [root@zabbix-server /usr/lib/zabbix/alertscripts]# chmod +x weixin.sh #执行脚本 + 成员ID + 部门ID + 内容 [root@zabbix-server /usr/lib/zabbix/alertscripts]# ./weixin.sh LiXian 1 测试--哈哈 #errmsg结果为OK则成功。 {"errcode":0,"errmsg":"ok. Warning: wrong json format. ","invaliduser":""}[root@zabbix-server /usr/lib/zabbix/alertscripts]#
8.创建报警媒介类型
9.设置报警媒介信息为脚本,并添加三个参数
{ALERT.SENDTO} #发送的⽤户 {ALERT.SUBJECT} #发送的主题 {ALERT.MESSAGE} #发送的内容
10.填写用户报警信息
类型选择报警媒介为微信报警
收件人为微信的管理成员ID
收件人为微信的管理成员ID
11.更新用户报警媒介
这里一定要选择更新
12.测试登录用户过多和解决
在本地多连接几个xshell用户,大于5个会报警并发送邮件和微信
恢复也会发送邮件和微信
恢复也会发送邮件和微信