侧边栏壁纸
博主头像
★街角晚灯★博主等级

博观而约取 厚积而薄发

  • 累计撰写 438 篇文章
  • 累计创建 181 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Zabbix4配置微信报警及消息群发

WinJay
2019-05-31 / 0 评论 / 0 点赞 / 123 阅读 / 6640 字 / 正在检测是否收录...
温馨提示:
文章发布较早,内容可能过时,阅读注意甄别。。。。

title: Zabbix4配置微信报警及消息群发 date: '2019-05-31 16:06:27+08:00'

报警模块下载地址为:wget https://github.com/OneOaaS/weixin-alert/archive/master.zip

一、 企业微信号申请

地址: http://work.weixin.qq.com/

第一步注册

因为我们没有企业,所以我们选择组织。

提示:这里简单的说一下,微信企业号和微信公众号是不一样的!

image.png 点击立即注册后,填入基本信息,管理员姓名要填写微信绑定的人的真实姓名才可以。

image.png

至此,企业微信就注册完了,如有权限可进行主体信息的验证。

二、配置微信企业号

当我们设置完微信号的信息之后,请继续跟我操作。中间可能步骤不是特别全,就是设置企业的信息

我们需要记录企业ID,后面会用到

image-122 我们点击通讯录,可以进行添加一个部门,或者添加一个成员。成员可以使用微信邀请或者短信邀请。

image-123 部门新建完成后就可以进行人员管理了,可以进行人员新增、导入或迁移等。
我在此直接将我的帐号移入过来了,因为没有别的帐号可以加入。

image-124

点击成员姓名,进去查看成员详情,记录下成员的帐号信息,后面会用到

image-129 下一步进行点击导航中间的应用与小程序,在自建点击创建应用

image-125 填入应用名称,然后选择可见范围,选择相应部门后点击确认,最后点击创建应用。

image-126 创建完成后,需要记录Agentld、Secret 的值,后面会用到

image-127 至此得到需要的信息 :
1.用户的账号 2.企业ID(CorpID)3.应用Secret 4.应用Agentld

三、修改Zabbix.conf

[root@Zabbix ~]# grep alertscripts /etc/zabbix/zabbix_server.conf
# AlertScriptsPath=${datadir}/zabbix/alertscripts
AlertScriptsPath=/usr/lib/zabbix/alertscripts
[root@Zabbix ~]# cd /usr/lib/zabbix/alertscripts/

我们设置zabbix默认脚本路径,这样在web端就可以获取到脚本。

四、设置脚本

下载脚本:[root@Zabbix alertscripts]# wget https://github.com/OneOaaS/weixin-alert/archive/master.zip

[root@Zabbix alertscripts]# unzip master.zip

image-130 weixin_linux_amd64是给单人发消息的,weixin_linux_amd64_toparty是给部门发消息的 .

[root@Zabbix alertscripts]# cd weixin-alert-master/
[root@Zabbix weixin-alert-master]# cp weixin_linux_amd64_toparty ../wxp.py
[root@Zabbix weixin-alert-master]# cd ..
[root@Zabbix alertscripts]# ls -al
total 15832
drwxr-xr-x. 4 root root 133 May 31 03:02 .
drwxr-xr-x. 4 root root 49 Jan 21 03:15 ..
drwxr-xr-x 2 root root 142 Jun 11 2017 master
-rw-r–r– 1 root root 5461620 May 30 02:38 master.zip
drwxr-xr-x 2 root root 142 Jun 11 2017 weixin-alert-master
-rwxr-xr-x 1 root root 3579488 May 31 03:02 wxp.py
-rwxr-xr-x 1 zabbix zabbix 3579488 May 16 05:12 wx.py
-rwxr-xr-x 1 zabbix zabbix 208 May 28 04:49 wx.sh
-rwxr-xr-x 1 zabbix zabbix 3579488 May 30 02:41 wxt.py
-rwxr-xr-x 1 zabbix zabbix 161 May 31 01:36 wxt.sh

image-131 [root@Zabbix alertscripts]# chown zabbix:zabbix wxp.py
[root@Zabbix alertscripts]# chmod 755 wxp.py

执行脚本,进行测试 :

[root@Zabbix alertscripts]# ./wxp.py –corpid=wwd7e5f2b8463b26b8 –corpsecret=SocXKTb9MqTfc71bBFqGZxI-Edfp_SHUkXC59pXtUJQ –msg=”您好,此为报警测试” –toparty=2 –agentid=1000002
{“errcode”:0,”errmsg”:”ok”,”invaliduser”:””}

image-132 提示:
–corpid= 我们企业里面的id
–corpsecret= 这里就是我们Secret里面的id
-msg= 内容
–toparty=2 部门ID,这个参数是给部门内所有人员发消息
-user=我们邀请用户的账号

因为脚本是编译过的,无法进行编辑,我们可以使用./wechat -h or –help 查看

脚本后面内容中的一些参数touser,toparty,msgtype,agentid,content,safe是微信企业号中定义的参数名称,说明文档见腾讯企业号开发者文档 https://work.weixin.qq.com/api/doc#90000/90135/90664

image-133 五、zabbix web 界面配置

创建报警媒介

image-134 –corpid=我们企业里面的id
–corpsecret=这里就是我们Secret里面的id
–agentid= Agentld ID
–user={ALERT.SENDTO}
–msg={ALERT.MESSAGE}

配置报警用户
可以自己创建用户或者在Admin上配置报警媒介 ,我这里直接使用Admin进行配置了。

image-135image-136 这里填写微信收件人的账号

设置动作
报警操作

image-137 恢复操作

image-138 报警消息设置如下:
默认标题: 服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!
消息内容 :
告警主机:{HOST.NAME}
告警地址:{HOST.IP}
监控项目:{ITEM.NAME}
监控取值:{ITEM.LASTVALUE}
告警等级:{TRIGGER.SEVERITY}
当前状态:{TRIGGER.STATUS}
告警信息:{TRIGGER.NAME}
告警时间:{EVENT.DATE} {EVENT.TIME}
事件ID:{EVENT.ID}

恢复报警如下:
默认标题: 已恢复: {EVENT.NAME}
消息内容:
问题已在 {EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME} 解决
告警主机:{HOST.NAME}
告警地址:{HOST.IP}
监控项目:{ITEM.NAME}
事件名称: {EVENT.NAME}
告警等级: {EVENT.SEVERITY}
事件 ID: {EVENT.ID}

提示: 不要忘记先点小的新的–>小的更新–>更新

六、测试

以上配置就算全部完成,可以测试了。在测试过程中,需注意zabbix server需要能访问外网。 测试目前是只有企业微信可以收到报警信息。

七、让微信报警信息接收的用户不用下载企业微信而仅使用个人微信来接收报警信息。

在企业微信–我的企业中,点击左侧导航栏中的微工作台。

image-139 邀请用户直接用个人微信扫描二维码关注企业后,然后分配好权限即可通过个人微信接收报警信息了。

image-140image-141 至此,全部结束。

0

评论区