Zabbix系统邮件告警Python脚本

企鹅博客
19222
文章
0
评论
2019年7月12日21:26:44 评论 2.3K views 1710字阅读5分42秒

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 = '[email protected]'
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

继续阅读
  • 版权声明: 发表于 2019年7月12日21:26:44
  • 转载注明:https://www.qieseo.com/164552.html
LVS-NAT模型实现负载均衡 linux服务器应用

LVS-NAT模型实现负载均衡

前言 前篇文章我们主要讲解了LVS的理论知识,包括LVS来源、宗旨、三种模型的架构以及LVS内核空间的十种算法,今天我们来进行实践的LVS中三种模型中的NAT模型的架构以及实现方式。(实验环境以Web...
Liferay MinifierFilter的研究 linux服务器应用

Liferay MinifierFilter的研究

大家都知道,在Web应用程序中,为了节省网络开销,往往吧多个小的js文件整合成一个大的js文件,吧多个小的css文件整合成一个大的js文件,这样原本N次小文件的请求就可以合并成单次的网络请求。最典型的...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: