Python实现的监测服务器硬盘使用率脚本分享


Posted in Python onNovember 07, 2014

此脚本主要用于zabbix监控系统硬盘只用,适用于windows和linux系统,返回值为0为正常,有几个分区的硬盘剩余少于10G或低于10%就为报警阀值(windows的C盘和linux的根分区除外):

#!/bin/env python 

# -*- coding: utf-8 -*- 

########################################################## 

# @This script is used to check disk free space for zabbix 

# @Contact:      wangwei03@3water.com 

# @Name:         disk.py 

# @Function:     check disk free space for zabbix 

# @Author:       wangwei 

########################################################## 

import platform 

import commands 

  

def w_disk(): 

    import wmi 

    c = wmi.WMI () 

    i = 0

    for disk in c.Win32_LogicalDisk (DriveType=3): 

        a = int(disk.FreeSpace) / (1024*1024*1024) 

        b = int(100.0 * long (disk.FreeSpace) / long (disk.Size)) 

        if disk.Caption == "C:": 

            if (a < 2) or (b < 10): 

                i += 1

            else: 

                i += 0

        else: 

            if (a < 10) or (b < 10): 

                i += 1

            else: 

                i += 0

    print i 

  

def L_disk(): 

    free = commands.getstatusoutput('df -h|grep dev|egrep -v "tmp|var|shm"') 

    list = free[1].split('\n') 

    i = 0

    for disk in range(len(list)): 

        vd = list[disk][6:8] 

        a = list[disk].split()[3] 

        if a[-1] == 'T': 

            a = int(float(a[:-1]))*1024

        else: 

            a = int(float(a[:-1])) 

        b = 100 - int(list[disk].split()[4][:-1]) 

        if vd == "da": 

            if (a < 2) or (b < 10): 

                i += 1

            else: 

                i += 0

        else: 

            if (a < 10) or (b < 10): 

                i += 1

            else: 

                i += 0

    print i 

  

if __name__ == "__main__": 

    os = platform.system() 

    if os == "Windows": 

        w_disk() 

    elif os == "Linux": 

        L_disk()
Python 相关文章推荐
Python自动化运维和部署项目工具Fabric使用实例
Sep 18 Python
python实现音乐下载器
Apr 15 Python
numpy实现合并多维矩阵、list的扩展方法
May 08 Python
Tensorflow 查看变量的值方法
Jun 14 Python
python协程之动态添加任务的方法
Feb 19 Python
Python 数据可视化pyecharts的使用详解
Jun 26 Python
详解Python利用random生成一个列表内的随机数
Aug 21 Python
python GUI库图形界面开发之PyQt5动态加载QSS样式文件
Feb 25 Python
python GUI库图形界面开发之PyQt5单行文本框控件QLineEdit详细使用方法与实例
Feb 27 Python
python3获取控制台输入的数据的具体实例
Aug 16 Python
Python通过fnmatch模块实现文件名匹配
Sep 30 Python
使用pandas实现筛选出指定列值所对应的行
Dec 13 Python
Python实现的简单发送邮件脚本分享
Nov 07 #Python
Python获取Linux系统下的本机IP地址代码分享
Nov 07 #Python
零基础写python爬虫之使用Scrapy框架编写爬虫
Nov 07 #Python
零基础写python爬虫之爬虫框架Scrapy安装配置
Nov 06 #Python
零基础写python爬虫之爬虫编写全记录
Nov 06 #Python
零基础写python爬虫之打包生成exe文件
Nov 06 #Python
零基础写python爬虫之抓取百度贴吧并存储到本地txt文件改进版
Nov 06 #Python
You might like
PHP查询MySQL大量数据的时候内存占用分析
2011/07/22 PHP
学习php设计模式 php实现状态模式
2015/12/07 PHP
php文件缓存方法总结
2016/03/16 PHP
PHP序列化/对象注入漏洞分析
2016/04/18 PHP
php数据库操作model类(使用__call方法)
2016/11/16 PHP
Yii框架视图、视图布局、视图数据块操作示例
2019/10/14 PHP
Extjs4中的分页应用结合前后台
2013/12/13 Javascript
js图片实时加载提供网页打开速度
2014/09/11 Javascript
JavaScript设计模式之策略模式实例
2014/10/10 Javascript
node.js中的console.timeEnd方法使用说明
2014/12/09 Javascript
javascript实时显示北京时间的方法
2015/03/12 Javascript
jquery validate.js表单验证入门实例(附源码)
2015/11/10 Javascript
jquery插件uploadify实现带进度条的文件批量上传
2015/12/13 Javascript
浅谈js基本数据类型和typeof
2016/08/09 Javascript
js继承实现方法详解
2016/12/16 Javascript
使用Vue完成一个简单的todolist的方法
2017/12/01 Javascript
WebSocket的通信过程与实现方法详解
2018/04/29 Javascript
javascript实现贪吃蛇游戏(娱乐版)
2020/08/17 Javascript
在Vue中使用CSS3实现内容无缝滚动的示例代码
2020/11/27 Vue.js
vue+echarts实现中国地图流动效果(步骤详解)
2021/01/27 Vue.js
python追加元素到列表的方法
2015/07/28 Python
python+selenium实现京东自动登录及秒杀功能
2017/11/18 Python
python skimage 连通性区域检测方法
2018/06/21 Python
python之Flask实现简单登录功能的示例代码
2018/12/24 Python
PyQt QCombobox设置行高的方法
2019/06/20 Python
PyQt5 界面显示无响应的实现
2020/03/26 Python
详解tensorflow之过拟合问题实战
2020/11/01 Python
巴西男士胡须和头发护理产品商店:Beard
2017/11/13 全球购物
中科方德软件测试面试题
2016/04/21 面试题
领导的自我鉴定
2013/12/28 职场文书
访谈节目策划方案
2014/05/15 职场文书
警察先进个人事迹材料
2014/05/16 职场文书
党的群众路线教育实践活动对照检查材料
2014/09/22 职场文书
2015年学校体育工作总结
2015/04/22 职场文书
MySQL创建管理LIST分区
2022/04/13 MySQL
python实现简单的三子棋游戏
2022/04/28 Python