编辑zabbix_server.conf文件

编辑zabbix_server.conf文件,修改AlertScriptsPath参数,该参数用于指定外部脚本的绝对路径。

vim /etc/zabbix/zabbix_server.confAlertScriptsPath=/usr/lib/zabbix/alertscripts

上传python脚本

上传Python脚本send_mail.py至此路径(/usr/lib/zabbix/alertscripts)下,脚本内容如下:

'''
发送txt文本邮件
'''import smtplib  from email.mime.text import MIMEText  from sys import argv

mailto_list=[] 
mail_host="smtp.163.com:25"  
mail_user="gxxxxx@163.com"     
mail_pass="ZHAxxxxxx"   

debug_level=0       

def send_mail(to_list,sub,content):  
    me=mail_user
    msg = MIMEText(content,_subtype='plain',_charset='utf-8')  
    msg['Subject'] = sub  
    msg['From'] = me  
    msg['To'] = ";".join(to_list)  
    try:  
        server = smtplib.SMTP()  
        server.set_debuglevel(debug_level)    
        server.connect(mail_host)  
        server.login(mail_user,mail_pass)  
        server.sendmail(me, to_list, msg.as_string())  
        server.close()  
        return True  
    except Exception, e:  
        print str(e)  
        return False  if __name__ == '__main__':
    try:
        mailto_list=argv[1].split(';')
        sub=argv[2]
        content=argv[3]
    except:
        print "python send_mail.py 'user1@xx.com;user2@xx.com' sub content"
        exit()

    if send_mail(mailto_list,sub,content):  
        print "发送成功"  
    else:  
        print "发送失败"

脚本上传之后,修改权限:

chmod +x send_mail.py

zabbix web端——创建媒体类型

管理——>报警媒介类型——>创建媒体类型 
zabbix3.2邮件报警配置_java
 zabbix3.2邮件报警配置_java_02

zabbix web端——用户指定媒介

zabbix3.2邮件报警配置_java_03
 zabbix3.2邮件报警配置_java_04

zabbix web端——创建动作

zabbix3.2邮件报警配置_java_05 zabbix3.2邮件报警配置_java_06
 zabbix3.2邮件报警配置_java_07
 告警消息模板

接收人:{TRIGGER.STATUS}: {TRIGGER.NAME} 
告警主机:{HOST.NAME} 
主机地址:{HOST.IP} 
告警时间:{EVENT.DATE} {EVENT.TIME} 
告警等级:{TRIGGER.SEVERITY} 
告警信息:{TRIGGER.NAME} 
问题详情:{ITEM.NAME}:{ITEM.VALUE} 
事件代码:{EVENT.ID}  
zabbix3.2邮件报警配置_java_08

恢复消息模板  
接收人:{TRIGGER.STATUS}: {TRIGGER.NAME} 
恢复主机:{HOST.NAME} 
主机地址:{HOST.IP} 
恢复时间:{EVENT.DATE} {EVENT.TIME} 
恢复等级:{TRIGGER.SEVERITY} 
恢复信息:{TRIGGER.NAME} 
问题详情:{ITEM.NAME}:{ITEM.VALUE} 
事件代码:{EVENT.ID}

邮件测试

利用本机添加的日志监控进行测试,在日志中输入yyy则报警,输入111则问题解决。 
 zabbix3.2邮件报警配置_java_09
 zabbix3.2邮件报警配置_java_10