两个文件都在alertscripts目录下
zabbix执行的文件为 send_mail.py
vim send_mail.py
#!/usr/bin/env python# -*- coding:UTF-8 -*-
import sys
from_addr = "发送者的邮箱"
password = "发送者邮箱密码"
to_addr = sys.argv[1]
subject = sys.argv[2]
info = sys.argv[3]
smtp_server = "smtp.sina.com.cn" #我用得新浪邮箱,所以这里填写新浪的smtp
from email import encoders
from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr, formataddr
import smtplib
def _format_addr(s):
name, addr = parseaddr(s)
return formataddr(( \
Header(name, 'utf-8').encode(), \
addr.encode('utf-8') if isinstance(addr, unicode) else addr))
msg = MIMEText(info, 'plain', 'utf-8')
msg['From'] = _format_addr(u'生产服务器报警 <%s>' %from_addr)
msg['To'] = _format_addr(u'各位大神们 <%s>' %to_addr)
msg['Subject'] = Header(subject, 'utf-8').encode()
server = smtplib.SMTP(smtp_server, 25)
server.login(from_addr, password)
server.sendmail(from_addr, [to_addr], msg.as_string())
server.quit()
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
vim pymail.sh
#!/bin/bash
b=$2
c=$3
#echo $b >> /tmp/1.txt
#echo $c >> /tmp/1.txt
/usr/lib/zabbix/alertscripts/send_mail.py $1 "$b" "$c" &