部署zabbix-server【监控端】
部署zabbix-agent【被监控端】
二、 zabbix 微信报警【监控端】 5.1 下载企业微信【手机】 5.2登录 企业微信后台【pc】实现对web服务器监控【监控端】
1、打开企业微信官网:https://work.weixin.qq.com/
2、需要扫码登陆(使用手机端扫码)
3、创建企业
5、添加部门
6、在部门内添加成员
获取部门id:
获取企业id
AgentID和secret(报警机器人)
5.3收集所需的企业微信信息如下:
AgentID 1000002 Secret 2QvlfpUxh4123kh2N7ijfkCs1lzb4Tkgr6xQ 企业 CorpID wwbc27916706540977 部门id 65.4设置报警监控脚本
#! /bin/bash
#set -x
CorpID="wwbc27916706540977" #我的企业下面的CorpID
Secret="6cMYoDUUdOiLjawS487dLr4SNp1Gku_nQTq22uV9gNM" #创建的应用那有Secret
GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CorpID&corpsecret=$Secret"
Token=$(/usr/bin/curl -s -G $GURL |awk -F": '{print $4}'|awk -F" '{print $2}')
#echo $Token
PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Token"
function body(){
local int agentid=1000002 #改为AgentId 在创建的应用那里看
local UserID=$1 #发送的用户位于$1的字符串
local PartyID=2 #第一步看的通讯录中的部门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": "'"$agentid""",n"
printf 't"text": {n'
printf 'tt"content": "'"$Msg"""n"
printf 't},n'
printf 't"safe":"0"n'
printf '}n'
}
/usr/bin/curl --data-ascii "$(body $1 $2 $3)" $PURL
监控脚本测试: 注:HeYangWei为上图的企业微信名 test为标题 alan为内容,标题和内容均可自定义 [root@alan ~]# /usr/lib/zabbix/alertscripts/wechat.sh HeYangWei test alan5.6 zabbix 创建告警媒介
========================
以下内容分别为收件人,标题,消息内容
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
5.7 zabbix 添加告警用户
为admin用户关联告警媒介
如果希望中文显示:
告警主机: {HOST.NAME}
告警地址: {HOST.IP}
监控项目: {ITEM.NAME}
告警等级: {TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警时间: {EVENT.DATE} {EVENT.TIME}
5.9 测试微信报警
被监控端操作
[root@web1 ~]# systemctl stop nginx
注意接收企业微信消息



