"Centos7.4 Zabbix4.0微信告警设置教程"

1星 需积分: 10 8 下载量 183 浏览量 更新于2024-03-22 收藏 1.22MB DOCX 举报
本文主要介绍了在Centos7.4系统环境下使用Zabbix4.0实现微信告警的方法。由于是内网环境,只能通过一台代理服务器进行外部通讯,同时邮件等端口也被封禁,因此考虑采用微信报警的方式。首先,通过注册微信企业号和创建应用程序来获取CropID、AgentID和SecretID。其次,通过编写Shell脚本实现微信告警设置。以上是本文的主要内容,接下来将详细介绍每个步骤的具体操作。 首先,注册微信企业号并创建应用程序。在企业微信注册页面(https://qy.weixin.qq.com/),注册一个微信企业号,并添加一个子部门。此时默认部门ID为2。然后自建一个应用程序,设置可见范围为运维。点击“应用与小程序”页面,查看AgentID和SecretID,并将其记录下来。另外,点击“我的企业”页面可以查看企业ID,即CropID。企业ID和密钥信息如下: CropID: xxxxxxxxxxxxxxxxxxx AgentId: 1000002 Secret: 8ubvbvaUvq5W68qcEIFWcwVRI7ErfTl-68jV4Hs9noE 接下来,打开https://work.weixin.qq.com/api/devtools/devtool.php,测试企业微信账号是否能够正常访问。 其次,编写Shell脚本来实现微信告警设置。在Centos7.4系统环境下,通过以下步骤操作: ```bash #!/bin/sh CropID="xxxxxxxxxxxxxxxxxx" Secret="8ubvbvaUvq5W68qcEIFWcwVRI7ErfTl-68jV4Hs9noE" AgentID="1000002" 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=1000002 local UserID=@all local PartyID=1 local Msg=$(echo "$@"|awk -F: '{print $NF}') printf '{\n' printf '\t"touser" : "'"$UserID"\"",\n" printf '\t"toparty":"'"$PartyID"\"",\n" printf '\t"msgtype":"text",\n' printf '\t"agentid":"'"$AgentID"\"",\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 $*)" $PURL ``` 以上代码将企业微信告警的CropID、Secret、AgentID等信息进行了设置,并通过curl命令来发送告警消息。其中,body函数用来构建告警消息的JSON格式,包括消息内容、发送对象等。最后使用curl命令发送告警消息。 通过以上步骤,就可以在Centos7.4系统环境下实现Zabbix4.0的微信告警功能。这种方式适用于内网环境中无法使用邮件告警的情况,通过微信企业号来实现实时告警通知。希望以上内容对您有所帮助。