自定義Zabbix告警,首先需要編寫告警腳本,告警腳本需要支援3個參數:
1.告警接收人
2.主題
3.内容
生産建議使用Shell腳本作為告警腳本,同時需要日志記錄,也可以在Shell腳本中完成,然後可以再使用Shell腳本調用其它的腳本。這樣可以随時更換告警媒體,也可以做好日志記錄。
1.最簡單的告警腳本
[ root @ linux-node1 alertscripts] #cat pymail.sh
#!/ bin / bash
echo $ 1 $ 2 $ 3 >> /tmp/alter.txt
2.編寫告警腳本
#!/ usr / bin / python
#coding:utf-8
從email.mime.text
導入smtplib
import sys 從email.header導入MIMEText導入
來自email.Utils的頭
檔案導入COMMASPACE
receiver = sys.argv [ 1]
subject = sys。的argv [ 2]
mailbody = sys.argv中[ 3]
SMTPSERVER = 'smtp.qq.com'
的使用者名= '使用者名'
密碼= 'passwd的'
發送者的使用者名=
味精= MimeText用于(mailbody, 'HTML', 'UTF-8')
msg [ 'Subject'] = Header(subject,'utf-8')
msg [ 'From'] = username
msg [ 'To'] =接收者
smtp = smtplib.SMTP()
smtp.connect(smtpserver)
smtp.login(使用者名,密碼)
smtp.starttls()
smtp.sendmail(msg [ 'From'],msg [ 'To'],msg.as_string())
smtp.quit()
測試郵件發送
[ root @ linux-node1 alertscripts] #python pymail.py [email protected] testmail test
加入到告警腳本中
/ usr / local / bin / python /usr/lib/zabbix/alertscripts/pymail.py“$ 1”“$ 2”“$ 3”