zabbix添加用户及告警媒介

1.添加用户组

打开 管理—用户群组—创建用户群组

输入组名 权限 选择添加要管理的主机组 我这里因为test组里面有一台test1的主机,给予读写权限添加

2.添加用户

输入别名 选择刚才我们添加的OP组 输入密码 添加

3.添加告警媒介

配置告警脚本路径,重启zabbix_server

vim zabbix_server.conf
AlertScriptsPath=/usr/local/zabbix/alertscripts

发送邮件脚本

[root@localhost alertscripts]# cat sendmail.sh 
#!/bin/bash
SEND_TO=$1
SEND_SUBJECT=$2
SEND_CONTENT="/tmp/alert_$$.tmp"
echo "$3">$SEND_CONTENT
dos2unix $SEND_CONTENT
mailx -s "$SEND_SUBJECT" "$SEND_TO"<$SEND_CONTENT

微信告警脚本,相关的corpid和secret根据实际情况填写

[root@localhost alertscripts]# cat wechat.sh 
#!/bin/bash
 #set -x
 CorpID="xxxxx"
 Secret="xxxxx"
 GURL="http://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="http://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Token"
 UserID=$1
 PartyID=2
 agentid=1
 Msg=$(echo "$@"|cut -d" "-f1-)
 
 message(){
 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 "$(message $1 $2 $3)" $PURL

添加发送邮件服务端

yum install mailx
vim /etc/mail.rc   #邮件发件相关配置如下 

set from=xxx@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=xxx@qq.com
set smtp-auth-password=ublfextkqkuabiaaxxx
set smtp-auth=login

选择 管理—报警媒介类型—创建媒介类型

下面是邮件告警的具体配置,脚本参数是固定的,

微信告警的具体配置和邮件一样都是采用脚本 脚本名称输入微信告警的脚本名,脚本参数是固定的

4.添加动作

添加 配置—动作—创建动作

具体的内容如下

故障{TRIGGER.STATUS},服务器{HOSTNAME}发生:{TRIGGER.NAME}故障!
告警主机:{HOSTNAME}
告警时间:{EVENT.DATA} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
恢复{TRIGGER.STATUS},服务器:{HOSTNAME}{TRIGGER.NAME}已恢复!
告警主机:{HOSTNAME}
告警时间:{EVENT.DATA} {EVENT.TIME}
故障持续时间:{EVENT.AGE}
恢复时间: {EVENT.RECOVERY.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

最后需要在用户–报警媒介 ,添加报警媒介

配置完成后 如果收到报警 我们就可以通过邮件查收了


zabbix添加用户及告警媒介
http://www.jcwit.com/article/201/
作者
Carols
发布于
2019年6月1日
许可协议