Zabbix邮件告警实战

告警脚本的放置位置见配置/usr/local/zabbix/etc/zabbix_server.conf

LogFile=/usr/local/zabbix/zabbix_server.log

DBHost=127.0.0.1

DBName=zabbix

DBUser=zabbix

DBPassword=zabbixpwd

DBPort=3306

Timeout=30

AlertScriptsPath=/usr/local/zabbix/alertscripts

ExternalScripts=/usr/local/zabbix/externalscripts

LogSlowQueries=3000


先创建一下告警脚本位置:

 


邮件告警注意事项

  • 服务器往外的25端口一般被云厂商禁止
  • 所以建议使用465端口发送邮件
  • qq邮箱、163邮箱需要配置开启smtp


发邮件的python脚本/usr/local/zabbix/alertscripts/zabbix_sendmail.py

#!/usr/bin/python

# -*- coding: utf-8 -*-

from email.mime.text import MIMEText

from email.header import Header

from smtplib import SMTP_SSL

import sys

smtpaddr = 'smtp.qq.com'

myemail='361589194@qq.com'

#password='mypassword'

f = open('/usr/local/zabbix/.passwd','r')

password = f.readline().strip()

recvmail=sys.argv[1]

subject=sys.argv[2]

content=sys.argv[3]

msg = MIMEText("""%s"""%(content), "plain", "utf-8")

msg['Subject'] = Header(subject, 'utf-8').encode()

msg['From'] = myemail

msg['To'] =  recvmail

try:

  smtp = SMTP_SSL( smtpaddr )

  smtp.login(myemail, password)

  smtp.sendmail(myemail, recvmail.split(','), msg.as_string())

  smtp.quit()

  print("success")

except Exception as e:

  print("fail: "+str(e))


测试脚本

chmod a+x /usr/local/zabbix/alertscripts/zabbix_sendmail.py

/usr/local/zabbix/alertscripts/zabbix_sendmail.py 361589194@qq.com 'zabbix disk' 'content: disk > 90%'

 


Zabbix邮件告警配置

  • 写一个邮件告警的脚本,需要测试成功
  • 报警媒介添加邮件告警

 

  • 用户设置报警媒介(用户选Admin)

  • 创建触发器动作

创建action

为故障恢复时再发送邮件:同Operations设置

 


报警媒介添加邮件告警

  • 自定义脚本
  • 脚本名称:zabbix_sendmail.py
  • 脚本需要三个参数

{ALERT.SENDTO}

{ALERT.SUBJECT}

{ALERT.MESSAGE}

用户添加报警媒介

  • 类型选择邮件告警
  • 触发器有多种触发,从信息 -> 灾难,可定义接收哪种类型的告警
  • 用户需要对服务器可读

创建触发器动作

  • 动作有多种事件源,告警的选择触发器
  • 邮件主题定义 -> {ALERT.SUBJECT}
  • 邮件内容定义 -> {ALERT.MESSAGE}
  • 操作添加发送邮件告警
  • 恢复添加发送邮件告警


告警内容自定义和告警抑制

主题、内容定义

  • 主机名变量:{HOST.NAME1}
  • 主机IP变量:{HOST.IP1}

延迟告警

  • 一般来说不会有问题马上发送告警,例如检测80端口

  • 定义持续时间

  • 定义step

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值