zabbix告警通知

      • 脚本告警
        • 1:报警媒介类型设置
        • 2:配置动作
        • 3:用户媒介配置
        • 4:编写脚本sever端配置
        • 结果验证
      • 邮件告警
      • 钉钉告警

脚本告警

发送小助理的方式告警;
可以自己编写脚本,调用发送邮件或者是oa系统的开放api实现通知功能,例如钉钉等

1:报警媒介类型设置

管理》报警媒介类型设置进行设置
脚本参数设置:
{ALERT.SENDTO}:发送给谁
{ALERT.SUBJECT}:概要
{ALERT.MESSAGE}:告警内容
脚本名称自定义的:sendim.sh 这个要跟后面步骤的一致
zabbix告警通知_第1张图片

2:配置动作

配置内容如下:下面这些就会以上一步{ALERT.MESSAGE}发送给对应的脚本
告警主机:{HOST.NAME}
告警地址:{HOST.IP}
监控项目:{ITEM.NAME}
监控取值:{ITEM.LASTVALUE}
告警等级:{TRIGGER.SEVERITY}
当前状态:{TRIGGER.STATUS}
告警信息:{TRIGGER.NAME}
告警时间:{EVENT.DATE} {EVENT.TIME}
事件ID:{EVENT.ID}
zabbix告警通知_第2张图片
恢复配置:
zabbix告警通知_第3张图片

3:用户媒介配置

用于配置发送给某些人查看,名字要是系统里面有的,否则会提示No media defined for user.
zabbix告警通知_第4张图片

4:编写脚本sever端配置

cat zabbix_server.conf|grep ExternalScripts
找到:
/usr/lib/zabbix/externalscripts
进入到上面路径:
cd /usr/lib/zabbix/externalscripts
编写脚本:脚本名称要与第一步的一样
vi sendim.sh
过程中出现权限错误,使用绝对路径可以知道
/usr/lib/zabbix/alertscripts/sendim.sh: line 2: 1.txt: Permission denied

#!/bin/bash
# $1 $2 $3分别代表第一步设置的3个参数。$3是一数组的形式,用for才可以遍历
for i in $3
do
echo $i>>/usr/lib/zabbix/alertscripts/1.txt #这里要写绝对路径,否则会提示没有权限
done
#这里就可以用脚本完成很多工作了,调用第三方api等

结果验证

zabbix告警通知_第5张图片

[root@localhost alertscripts]# cat 1.txt 
 事件ID:248018.08.09 15:54:32
{
告警主机:169.212
告警地址:200.200.169.212
监控项目:监控流程
监控取值:1
告警等级:Not
classified
当前状态:OK
告警信息:流程挂了
告警时间:2018.08.09
15:54:25
恢复时间:2018.08.09
15:56:25
持续时间:2m
事件ID:247
}

上面的脚本也可以是python的
参考文档:http://www.mamicode.com/info-detail-1846898.html

邮件告警

待补充

钉钉告警

待补充

你可能感兴趣的:(zabbix运维)