1. 程式人生 > >Zabbix3.4 python指令碼郵件告警

Zabbix3.4 python指令碼郵件告警

一、概述及環境要求

1、概述

zabbix監控也起到重要作用,以下是使用python指令碼傳送告警郵件配置方法。之前使用過sendemail郵件報警但是發現郵件主題為中文時候會出現亂碼的問題。

2、環境安裝要求

Zabbix軟體版本:zabbix3.4

作業系統:CentOS release 7.4 (Final)

二、指令碼建立及測試

1、檢視配置zabbix_server.conf ,找到AlertScriptsPath,檢視路徑位置,如被註釋,將註釋開啟,把send.py 檔案儲存到該目錄下。

grep -n ‘1’ /usr/local/etc/zabbix_server.conf

38:LogFile=/tmp/zabbix_server.log

87:DBName=zabbix

103:DBUser=zabbix

111:DBPassword=zabbix

126:DBPort=3306

239:StartVMwareCollectors=10

247:VMwareFrequency=60

255:VMwarePerfFrequency=60

265:VMwareCacheSize=80M

273:VMwareTimeout=10

281:SNMPTrapperFile=/tmp/zabbix_traps.tmp

289:StartSNMPTrapper=0

407:Timeout=4

448:AlertScriptsPath=/usr/local/share/zabbix/alertscripts

492:LogSlowQueries=3000

2、如有修改配置,需重啟zabbix-server服務。

/etc/init.d/zabbix_server restart

3、進入Zabbix發郵件指令碼目錄

cd /usr/local/share/zabbix/alertscripts

4、建立指令碼及配置

#!/usr/bin/python

#coding:utf-8

import smtplib

from email.mime.text import MIMEText

import sys

mail_user = ‘540336670’

mail_pass = ‘**********’

mail_postfix = ‘

qq.com

def send_mail(to_list,subject,content):

me = "zabbix3.4監控告警平臺"+"<"+mail_user+"@"+mail_postfix+">"  

msg = MIMEText(content, 'plain', 'utf-8')  

msg['Subject'] = subject  

msg['From'] = me  

msg['to'] = to_list  

try:  

    s = smtplib.SMTP()  

    s.connect(mail_host)  

    s.login(mail_user,mail_pass)  

    s.sendmail(me,to_list,msg.as_string())  

    s.close()  

    return True  

except Exception,e:  

    print str(e)  

    return False  

if name == “main”:

send_mail(sys.argv[1], sys.argv[2], sys.argv[3]) 

5.增加可執行許可權

6.測試郵件

三、ZABBIX伺服器報警媒介型別

1、web介面設定

新增三個引數

{ALERT.SENDTO}收件人地址

{ALERT.SUBJECT}主題

{ALERT.MESSAGE}詳細內容

wKiom1lGZ96RG_FHAAEA-7nYDCg460.jpg

2、建立報警使用者

wKioL1lGaEDAp0ttAAENcIy-O80467.jpg

3、配置報警媒介

wKiom1lGaFCD0OfEAAD2ipf7Xg4525.jpg

4、配置許可權

現在測試環境所以配置超級管理的許可權,如果是生產環境建議使用使用者許可權

wKiom1lGaGiB3gnCAAD2ipf7Xg4378.jpg

四、配置報警動作

1、建立新的觸發動作

wKiom1lGaIfA5K5uAAF8NH2-wJQ257.jpg

2、配置動作

wKioL1lGaQCy0BKwAAEX6Ke2LTQ752.jpg

3、配置操作

故障{TRIGGER.STATUS},伺服器:{HOSTNAME1}發生: {TRIGGER.NAME}故障!

告警主機:{HOSTNAME1}

告警時間:{EVENT.DATE} {EVENT.TIME}

告警等級:{TRIGGER.SEVERITY}

告警專案:{TRIGGER.KEY1}

問題詳情:{ITEM.NAME}:{ITEM.VALUE}

當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}

wKioL1lGaRLR3XIWAAGY4LVWgOA474.jpg

4、配置恢復操作

恢復{TRIGGER.STATUS}, 伺服器:{HOSTNAME1}: {TRIGGER.NAME}已恢復!

告警主機:{HOSTNAME1}

告警時間:{EVENT.DATE} {EVENT.TIME}

告警等級:{TRIGGER.SEVERITY}

告警專案:{TRIGGER.KEY1}

問題詳情:{ITEM.NAME}:{ITEM.VALUE}

當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}

wKiom1lGaSOhK0w1AAFRMtpO6hc436.jpg

5、郵件告警測試結果

wKioL1lGaTOTvnvOAAD-28x7sbE044.png

wKioL1lGaUOwfn6TAABMZG7Q1Qk716.png

  1. a-Z ↩︎