用python监控服务器的cpu,磁盘空间,内存,超过邮件报警


Posted in Python onJanuary 29, 2021

监控Linux服务器嘛,脚本逻辑基本上是用os.popen模块,然后把获取到的结果通过split切分成一个list,再拿目标list值和我阈值对比,超过就邮件报警;

邮件是通过Linux的mailx发出去的,可自行搜索安装该模块,关键字:“Linux使用mailx发邮件”,脚本如下: 

一、cpu ideal值,不小于20%

#!/usr/bin/python
# -*- coding: utf-8 -*-
 
import datetime
import os
 
 
f = os.popen('vmstat').readlines()
cpu_ideall = str(f).split()[-3]
if int(cpuideall) > 20:
    mail_content = "echo 'ip:IP地址(vmstat)' | mailx -s '[Warning!]CPU ideal below 20%, please check!' 收件邮箱"
    os.popen(mail_content)
else:
    pass

二、磁盘空间,不大于95%

#!/usr/bin/python
# -*- coding: utf-8 -*-
 
import datetime
import os
 
 
f = os.popen('df -lh').readlines()
s = []
s.append(str(f).split()[11].split('%')[0])
s.append(str(f).split()[-8].split('%')[0])
s.append(str(f).split()[-2].split('%')[0])
print s
 
i = 0
while i < len(s):
    if int(s[i]) > 95:
    mail_content = "echo 'ip:ip地址(df -lh)' | mailx -s '[Warning!]Disk above 95%, please check!' 收件邮件"
        os.popen(mail_content)
    else:
    pass
    i = i + 1

三、内存利用率,不低于200

#!/usr/bin/python
# -*- coding: utf-8 -*-
 
import datetime
import os
 
 
f = os.popen('free -m').readlines()
memm = str(f).split()[10]
if int(memm) < 200:
    mail_content = "echo 'ip:ip地址(free -m)' | mailx -s '[Warning!]MEM below 200, please check!' 收件邮箱"
    os.popen(mail_content)
else:
    pass

以上就是用python监控服务器的cpu,磁盘空间,内存,超过邮件报警的详细内容,更多关于python监控服务器的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python实现稀疏矩阵示例代码
Jun 09 Python
python记录程序运行时间的三种方法
Jul 14 Python
Django项目中用JS实现加载子页面并传值的方法
May 28 Python
数组保存为txt, npy, csv 文件, 数组遍历enumerate的方法
Jul 09 Python
python中正则表达式与模式匹配
May 07 Python
react+django清除浏览器缓存的几种方法小结
Jul 17 Python
Python及Pycharm安装方法图文教程
Aug 05 Python
Python实现分数序列求和
Feb 25 Python
Python调用C语言程序方法解析
Jul 07 Python
python爬虫用scrapy获取影片的实例分析
Nov 23 Python
如何通过python检查文件是否被占用
Dec 18 Python
Python matplotlib 利用随机函数生成变化图形
Apr 26 Python
python热力图实现简单方法
Jan 29 #Python
Ubuntu20.04环境安装tensorflow2的方法步骤
Jan 29 #Python
python3定位并识别图片验证码实现自动登录功能
Jan 29 #Python
python中numpy数组与list相互转换实例方法
Jan 29 #Python
详解Python中的GIL(全局解释器锁)详解及解决GIL的几种方案
Jan 29 #Python
Python爬虫获取op.gg英雄联盟英雄对位胜率的源码
Jan 29 #Python
python中spy++的使用超详细教程
Jan 29 #Python
You might like
支持中文字母数字、自定义字体php验证码代码
2012/02/27 PHP
深入解析php之apc
2013/05/15 PHP
试用php中oci8扩展
2015/06/18 PHP
PHP面向对象程序设计之对象克隆clone和魔术方法__clone()用法分析
2019/06/12 PHP
setAttribute 与 class冲突解决
2008/02/17 Javascript
用XMLDOM和ADODB.Stream实现base64编码解码实现代码
2010/11/28 Javascript
关于JavaScript命名空间的一些心得
2014/06/07 Javascript
JavaScript的History API使搜索引擎抓取AJAX内容
2015/12/07 Javascript
Backbone中View之间传值的学习心得
2016/08/09 Javascript
jQuery插件FusionCharts实现的2D柱状图效果示例【附demo源码下载】
2017/03/06 Javascript
深入理解Vue生命周期、手动挂载及挂载子组件
2017/09/27 Javascript
微信小程序滑动选择器的实现代码
2018/08/10 Javascript
Angular6 用户自定义标签开发的实现方法
2019/01/08 Javascript
Vue实现 点击显示再点击隐藏效果(点击页面空白区域也隐藏效果)
2020/01/16 Javascript
解决Vue中使用keepAlive不缓存问题
2020/08/04 Javascript
JS轮播图的实现方法
2020/08/24 Javascript
浅谈vue使用axios的回调函数中this不指向vue实例,为undefined
2020/09/21 Javascript
深入解析Python中的集合类型操作符
2015/08/19 Python
人脸识别经典算法一 特征脸方法(Eigenface)
2018/03/13 Python
Python函数装饰器常见使用方法实例详解
2019/03/30 Python
python调用函数、类和文件操作简单实例总结
2019/11/29 Python
Python逐行读取文件内容的方法总结
2020/02/14 Python
翻转数列python实现,求前n项和,并能输出整个数列的案例
2020/05/03 Python
python爬虫构建代理ip池抓取数据库的示例代码
2020/09/22 Python
python 实现全球IP归属地查询工具
2020/12/18 Python
纯CSS和jQuery实现的在页面顶部显示的进度条效果2例(仿手机浏览器进度条效果)
2014/04/16 HTML / CSS
大客户销售经理职责
2013/12/04 职场文书
养殖项目策划书范文
2014/01/13 职场文书
学子宴答谢词
2014/01/25 职场文书
会计电算化大学生职业规划书
2014/02/05 职场文书
答谢会策划方案
2014/05/12 职场文书
会计求职信
2014/05/29 职场文书
法学专业毕业生自荐信
2014/06/11 职场文书
教师学习党的群众路线教育实践活动心得体会
2014/10/31 职场文书
银行求职信模板
2015/03/20 职场文书
2019年农民幸福观调查的实践感悟
2019/12/19 职场文书