共计 1801 个字符,预计需要花费 5 分钟才能阅读完成。
Zabbix 系统邮件告警配置有很多方式,如系统自带的 mail,还有 zabbix+msmtp+mutt,但是使用 Python 脚本应该来说还是一个非常简捷有效的方式。
主要有如下步骤;
1、设置 zabbix_server.conf 文件
AlterScript = /usr/local/zabbix/share/zabbix/alterscript
2、建立告警脚本
cd /usr/local/zabbix/share/zabbix/alterscript/
sudo vim sendEmail.sh
#!/usr/bin/env python
#coding:utf-8
import time
import smtplib
import logging
from email.mime.text import MIMEText
import sys
LOG_FILENAME=”/var/log/email_python.log”
mail_host = ‘mstp.163.com’
mail_user = ‘xxxx@xxxx.com’
mail_pass = ‘xxxxx’
mail_postfix = ‘xxxxx’
def send_mail(to_list,subject,content,format=’html’):
try:
me=mail_user+”<“+mail_user+”@”+mail_postfix+”>”
msg=MIMEText(content,format,’utf-8′)
msg[“Accept-Language”]=”zh-CN”
msg[“Accept-Charset”]=”ISO-8859-1,utf-8″
msg[‘Subject’]=subject
msg[‘From’]=me
msg[‘to’]=to_list
s=smtplib.SMTP()
s.connect(mail_host,”25″)
s.login(mail_user,mail_pass)
s.sendmail(me,to_list,msg.as_string())
s.close()
except Exception,e:
logging.basicConfig(filename = LOG_FILENAME, level = logging.DEBUG)
logging.error(time.strftime(‘%Y-%m-%d %H:%I:%M’,time.localtime(time.time()))+e)
if __name__ == “__main__”:
send_mail(sys.argv[1],sys.argv[2],sys.argv[3])
3、设置告警脚本的权限
sudo chmod zabbix:zabbix sendEmail.sh
sudo chown 755 sendEmail.sh
4、最后只需要在 zabbix 前端进行相应的配置即可。
一些 Zabbix 相关教程集合 :
安装部署分布式监控系统 Zabbix 2.06 http://www.linuxidc.com/Linux/2013-07/86942.htm
《安装部署分布式监控系统 Zabbix 2.06》http://www.linuxidc.com/Linux/2013-07/86942.htm
CentOS 6.3 下 Zabbix 安装部署 http://www.linuxidc.com/Linux/2013-05/83786.htm
Zabbix 分布式监控系统实践 http://www.linuxidc.com/Linux/2013-06/85758.htm
CentOS 6.3 下 Zabbix 监控 apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htm
CentOS 6.3 下 Zabbix 监控 MySQL 数据库参数 http://www.linuxidc.com/Linux/2013-05/84800.htm
64 位 CentOS 6.2 下安装 Zabbix 2.0.6 http://www.linuxidc.com/Linux/2014-11/109541.htm
ZABBIX 的详细介绍 :请点这里
ZABBIX 的下载地址 :请点这里
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-05/117655.htm