python发送告警邮件脚本


Posted in Python onSeptember 17, 2018

python脚本为敏捷开发脚本,在zabbix监控也起到重要作用,以下是使用python脚本发送告警邮件配置方法。

脚本如下:

#!/usr/bin/python
#coding:utf-8
import smtplib
from email.mime.text import MIMEText
import sys
mail_host = 'smtp.126.com' 
mail_user = 'username'
mail_pass = 'passwd'
mail_postfix = '126.com'
def send_mail(to_list,subject,content):
 me = "zabbix 监控告警平台"+"<"+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])

新建send.py文件,将以上代码复制编辑,设置发件用户、密码。

然后验证脚本是否可以正常发送邮件 ./send.py xxx@139.com  hello test 三个参数分别是:收件人邮箱、邮箱主题、邮箱内容

登录zabbix主机,查看配置zabbix_server.conf ,找到AlertScriptsPath,查看路径位置,如被注释,将注释打开,把send.py 文件保存到该目录下。

如有修改配置,需重启zabbix-server服务。

在zabbix管理中添加报警媒介类型,注意parameter中的值一定要写入,注意script name中的脚本文件名字,要和刚刚编写的Python文件名一致

新增参数:{ALERT.SENDTO}{ALERT.SUBJECT}{ALERT.MESSAGE},分别依次加入。然后更新保存。

python发送告警邮件脚本

配置用户,修改报警媒介,填写收件人邮箱,选择发送邮件告警类型。

python发送告警邮件脚本

在配置-动作-操作中,send only to 中选择刚刚建立的send.py这个媒介类型

python发送告警邮件脚本

以上步骤就完成了python脚本的发送邮件告警配置。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
动感网页相册 python编写简单文件夹内图片浏览工具
Aug 17 Python
python 判断是否为正小数和正整数的实例
Jul 23 Python
浅谈flask截获所有访问及before/after_request修饰器
Jan 18 Python
Appium+python自动化怎么查看程序所占端口号和IP
Jun 14 Python
30秒学会30个超实用Python代码片段【收藏版】
Oct 15 Python
python GUI库图形界面开发之PyQt5信号与槽基本操作
Feb 25 Python
深度学习入门之Pytorch 数据增强的实现
Feb 26 Python
浅谈Python中re.match()和re.search()的使用及区别
Apr 14 Python
django Layui界面点击弹出对话框并请求逻辑生成分页的动态表格实例
May 12 Python
Python数据相关系数矩阵和热力图轻松实现教程
Jun 16 Python
Python如何实现大型数组运算(使用NumPy)
Jul 24 Python
Django项目配置Memcached和Redis, 缓存选择哪个更有优势
Apr 06 Python
python实现zabbix发送短信脚本
Sep 17 #Python
python通过zabbix api获取主机
Sep 17 #Python
Python从ZabbixAPI获取信息及实现Zabbix-API 监控的方法
Sep 17 #Python
python实现Zabbix-API监控
Sep 17 #Python
centos6.8安装python3.7无法import _ssl的解决方法
Sep 17 #Python
Python从使用线程到使用async/await的深入讲解
Sep 16 #Python
推荐10款最受Python开发者欢迎的Python IDE
Sep 16 #Python
You might like
PHP新手上路(三)
2006/10/09 PHP
推荐一篇入门级的Class文章
2007/03/19 PHP
PHP 伪静态隐藏传递参数名的四种方法
2010/02/22 PHP
无JS,完全php面向过程数据分页实现代码
2012/08/27 PHP
php-cli简介(不会Shell语言一样用Shell)
2013/06/03 PHP
php与java通过socket通信的实现代码
2013/10/21 PHP
thinkphp的dump函数无输出实例代码
2016/11/15 PHP
摘自启点的main.js
2008/04/20 Javascript
JavaScript 基本概念
2015/01/20 Javascript
移动端滑动插件Swipe教程
2016/10/16 Javascript
Nodejs进阶:核心模块net入门学习与实例讲解
2016/11/21 NodeJs
Bootstrap源码解读下拉菜单(4)
2016/12/23 Javascript
使用base64对图片的二进制进行编码并用ajax进行显示
2017/01/03 Javascript
Bootstrap Scrollspy源码学习
2017/03/02 Javascript
极简主义法编写JavaScript类
2017/11/02 Javascript
JavaScript数据结构与算法之队列原理与用法实例详解
2017/11/22 Javascript
基于vue中对鼠标划过事件的处理方式详解
2018/08/22 Javascript
JavaScript中的 new 命令
2019/05/22 Javascript
Vue 中如何将函数作为 props 传递给组件的实现代码
2020/05/12 Javascript
vue 实现tab切换保持数据状态
2020/07/21 Javascript
python 运算符 供重载参考
2009/06/11 Python
python excel使用xlutils类库实现追加写功能的方法
2018/05/02 Python
python实现flappy bird小游戏
2018/12/24 Python
python自定义函数实现一个数的三次方计算方法
2019/01/20 Python
10 分钟快速入门 Python3的教程
2019/01/29 Python
Django上使用数据可视化利器Bokeh解析
2019/07/31 Python
Python基于进程池实现多进程过程解析
2020/04/30 Python
Python列表嵌套常见坑点及解决方案
2020/09/30 Python
在python中对于bool布尔值的取反操作
2020/12/11 Python
英国现代家具和照明购物网站:Heal’s
2019/10/30 全球购物
锐步英国官网:Reebok英国
2019/11/29 全球购物
JYSK加拿大:购买家具、床垫、家居装饰等
2020/02/14 全球购物
医务工作者先进事迹材料
2014/01/26 职场文书
辞职信格式范文
2015/05/13 职场文书
职场新人刚入职工作总结该怎么写?
2019/05/15 职场文书
postgresql无序uuid性能测试及对数据库的影响
2021/06/11 PostgreSQL