zl程序教程

您现在的位置是:首页 >  Java

当前栏目

【Zabbix】Zabbix微信告警配置演示

2023-02-18 16:27:09 时间

文章目录

参考连接

阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区 (aliyun.com) zabbix镜像-zabbix下载地址-zabbix安装教程-阿里巴巴开源镜像站 (aliyun.com)

1、注册企业微信

2、配置企业微信

企业ID:xxxxxxxxx AgentId:xxxxxxxx Secret:xxxxxxxxxxxx

  • 记录企业ID
  • 创建应用,记录Agent ID 和 Secret
  • 创建告警组,把接收消息的人加入进来
  • 记录此账号名称

3、配置Zabbix服务器

1、确认记录相关信息

确认已经获取到告警组用户的账号,企业 CorpID 和 创建应用

2、修改zabbix.conf

[root@zabbix-server ~]# grep alertscripts /etc/zabbix/zabbix_server.conf 
# AlertScriptsPath=${datadir}/zabbix/alertscripts
AlertScriptsPath=/usr/lib/zabbix/alertscripts
设置zabbix默认脚本路径,这样在web端就可以获取到脚本

3、下载并设置脚本

https://github.com/OneOaaS/weixin-alert

[root@zabbix-server ~]# cd /usr/lib/zabbix/alertscripts
[root@zabbix-server ~]# wget https://github.com/OneOaaS/weixin-alertt https://github.com/OneOaaS/weixin-alert/blob/master/weixin_linux_amd64
[root@zabbix-server alertscripts]# mv weixin_linux_amd64 wechat
[root@zabbix-server alertscripts]# chmod 755 wechat 
[root@zabbix-server alertscripts]# chown zabbix:zabbix wechat 
[root@zabbix-server alertscripts]# ll
total 168
-rwxr-xr-x 1 zabbix zabbix 170801 Feb 17 10:59 wechat
[root@zabbix-server alertscripts]# 

4、执行脚本进行测试

Zabbix企业微信告警最新版 (qq.com)

/etc/zabbix/alertscripts/wechat --corpid=wxee***********81aa --corpsecret=Mm0mHwI8iVsjA*JUGySxOFMIlbosoVEkWIEiw --msg="您好</br>告警测试" --user=oneoaas --agentid=1000003
返回数据:
{"errcode":0,"errmsg":"ok","invaliduser":""}
#报错。解决:需要在设置的组别中,添加可见范围,允许发送的用户接收到消息
[root@zabbix-server alertscripts]# ./wechat --corpid=ww9***********000 --corpsecret=jgIJ***********8KA --msg="您好</br>告警测试</br>20210217 11:40" --user=**** --agentid=1000002
{"errcode":81013,"errmsg":"user & party & tag all invalid, hint: [1645070137249820547239507], from ip: 112.23.182.203, more info at https://open.work.weixin.qq.com/devtool/query?e=81013","invaliduser":"*****","msgid":"WpLD***********-Wz4HD62QCQg"}

# 显示成功。
[root@zabbix-server alertscripts]# ./wechat --corpid=ww9***********00 --corpsecret=jgIJV***********JnBwOE8KA --msg="您好</br>告警测试</br>20210217 12:05" --user=*** --agentid=1000002
{"errcode":0,"errmsg":"ok","msgid":"WpLDpQFMGSE843kRbNhgXYTITEtM8xSIIVqJodA8c-z-cY2b9gFPhT7LqnSvMMOEjKqNWW92XIQ4BqPsCWyOhA"}
# 注意事项:在设置的组别中,添加可见范围

温馨提示:
-corpid= 企业ID
--corpsecret= Secret ID
--msg= 所要发送的消息内容
--user= 发送人的用户账号
此脚本已经编译过,无法进行编辑,可以使用./wechat --help 查看帮助命令

4、在zabbix web页面页面配置告警信息

管理—报警媒介类型—创建告警媒介

填写报警媒介信息

--corpid=
--corpsecret=
--agentid=
--user={ALERT.SENDTO}
--msg={ALERT.MESSAGE}

授权终端接收用户

测试报警是否生效

设置告警动作

故障告警:{TRIGGER.STATUS}:{TRIGGER.NAME}
告警主机:{HOST.NAME}
主机地址:{HOST.IP}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
事件代码:{EVENT.ID}

Problem: {EVENT.NAME}
Problem started at {EVENT.TIME} on {EVENT.DATE}
Problem name: {EVENT.NAME}
Host: {HOST.NAME}
Severity: {EVENT.SEVERITY}
Operational data: {EVENT.OPDATA}
Original problem ID: {EVENT.ID}
{TRIGGER.URL}

恢复操作

故障解除:{TRIGGER.STATUS}:{TRIGGER.NAME}
恢复主机:{HOST.NAME}
主机地址:{HOST.IP}
恢复时间:{EVENT.DATE} {EVENT.TIME}
恢复等级:{TRIGGER.SEVERITY}
恢复信息:{TRIGGER.NAME}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
事件代码:{EVENT.ID}

执行命令,停止redis进行测试

# systemctl stop redis

执行命令,开启redis进行测试

systemctl start redis