samdung 发表于 2019-1-20 07:05:31

zabbix 3.0监控邮件报警

  

  zabbix 3.0 监控邮件报警
1、在监控服务器的/usr/local/zabbix/bin创建发送邮件脚本
vim send.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#!/usr/bmport pdb
import smtplib
import string
import time
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
#pdb.set_trace()
#HOST = "mail.gw.com.cn"
def S_Mail():
    HOST = "mail.xxxx.com"                           #邮件服务器
    SUBJECT = sys.argv.decode('utf-8').encode('gbk')   #主题
    TO =sys.argv                                       #收件邮箱
    FROM = "send address"
    text = sys.argv.decode('utf-8').encode('gbk')      #发件内容
    BODY = string.join((
                  "FROM: %s" % FROM,
                  "To: %s"% TO,
                  "Subject: %s" %SUBJECT,
                  "",
                  text
                  ),"\r\n")
    server = smtplib.SMTP()
    server.connect(HOST,发送邮件的端口)
    #server.starttls()
    server.login("send address","password")
    server.sendmail(FROM,,BODY)
    server.quit()
# email log 记录日志
    with open('/tmp/Email.log', 'a') as f:
      date=time.strftime("%y-%m-%d %H:%M:%S")
      str = date + "    " + TO +"    " + SUBJECT + "\r\n" + "\n"
      str1 = str.decode('gbk').encode('utf-8')
#       print("%s" %str1)
      f.write(str1)
if __name__=='__main__':
      S_Mail()  2、给发送邮件脚本授权
  chown -R zabbix.zabbix /usr/local/zabbix/bin/send.py
  chmod a+x /usr/local/zabbix/bin/send.py

  

  3、修改/usr/local/zabbix/etc/zabbix_server.conf
  AlertScriptsPath = /usr/local/zabbix/bin
  4、重启zabbix服务器。
  pkill zabbix
  /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
  5、利用编写的脚本发送邮件做测试。
  ./send.py "test@qq.com" "thisis test python send mail" "test test"
http://s2.运维网.com/wyfs02/M01/8A/A1/wKioL1g2VQOgaYzVAACCdkbDjdk804.png-wh_500x0-wm_3-wmp_4-s_4081756582.png
  6、配置zabbix的界面。
  (1)、创建Media types
  注意:此处要传参进去,是三个,对于脚本中的参数(1,2,3)
  {ALERT.SENDTO}
  {ALERT.SUBJECT}
  {ALERT.MESSAGE}
http://s4.运维网.com/wyfs02/M00/8A/A5/wKiom1g2VnfxOOCLAACPKrlSJvY240.png-wh_500x0-wm_3-wmp_4-s_2080329583.png
  

  (2)、配置接收报警邮件的用户并授权
http://s2.运维网.com/wyfs02/M00/8A/A1/wKioL1g2WfOiiautAAEYRdkfGbc026.png-wh_500x0-wm_3-wmp_4-s_2362714888.png
http://s5.运维网.com/wyfs02/M02/8A/A5/wKiom1g2WrOBmFFLAAChSvlss5o529.png-wh_500x0-wm_3-wmp_4-s_507429488.png
  (3)、新创建报警的动作action
http://s1.运维网.com/wyfs02/M02/8A/A2/wKioL1g2XBjBho-eAAC0hUjgevc308.png-wh_500x0-wm_3-wmp_4-s_2009756113.png
http://s2.运维网.com/wyfs02/M01/8A/A2/wKioL1g2XAXDD3WeAADpucD4t9o570.png-wh_500x0-wm_3-wmp_4-s_4238902322.png
  

  (4)、查看报警媒介和报警动作是否匹配成功。
http://s3.运维网.com/wyfs02/M00/8A/A2/wKioL1g2XJzTFlPhAACie58puOU743.png-wh_500x0-wm_3-wmp_4-s_3740617931.png
  

  7、关闭本机的zabbix_agentd可以看邮件是否报警成功,报警成功,则OK。
  

  8、补充内容(触发动作条件)
  默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生:{TRIGGER.NAME}故障!
  默认信息:
  告警主机:{HOSTNAME1}
  告警时间:{EVENT.DATE}{EVENT.TIME}
  告警等级:{TRIGGER.SEVERITY}
  告警信息:{TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}  问题详情:{ITEM.NAME}:{ITEM.VALUE}
  当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

  事件ID:{EVENT.ID}

  恢复信息:打钩

  恢复主旨:恢复{TRIGGER.STATUS},服务器:{HOSTNAME1}:{TRIGGER.NAME}已恢复!

  恢复信息:

  告警主机:{HOSTNAME1}

  告警时间:{EVENT.DATE}{EVENT.TIME}

  告警等级:{TRIGGER.SEVERITY}

  告警信息:{TRIGGER.NAME}

  告警项目:{TRIGGER.KEY1}

  问题详情:{ITEM.NAME}:{ITEM.VALUE}

  当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

  事件ID:{EVENT.ID}

  已启用:打钩
  




页: [1]
查看完整版本: zabbix 3.0监控邮件报警