Infi-chu:

http://www.cnblogs.com/Infi-chu/

模块:psutil

psutil是一个跨平台库,可以很轻松的为我们实现获取系统运行的进程和资源利用率等信息。

功能:主要是为了系统监控

安装:

wget https://pypi.python.org/packages/source/p/psutil/psutil-2.0.0.tar.gz --no-check-certificate

tar -zxvf psutil-2.0.0.tar.gz
cd psutil-2.0.0
python setup.py install

CPU信息:

CPU利用率主要包括以下几部分

  1. User time,执行用户进程的时间百分比
  2. System time,执行内核进程和中断的时间百分比
  3. Wait IO,由于IO等待而使CPU处于idle(空闲)状态的时间百分比
  4. Idle,CPU处于idle状态的时间百分比

Psutil.cpu_times() 使用方法:

#import psutil

#psutil.cpu_times(percpu=True) # 使用cpu_times 方法获取CPU完整信息,需要显示所有逻辑CPU信息,percpu = True可选

#psutil.cpu_times().user # 获取单项数据信息,如用户user 的CPU 时间比

#psutil.cpu_count() # 获取CPU 的逻辑个数,默认logical=True

#psytil.cpu_count(logical=False) # 获取CPU 的物理个数

内存信息:

内存信息主要包括以下几个部分:

  1. Total(内存总数)
  2. Used(已使用的内存数)
  3. Free(空闲内存数)
  4. Buffers(缓冲使用数)
  5. Cache(缓存使用数)
  6. Swap(交换分区使用数)

Psutil.virtual_memory()和psutil.swap_memory() 使用方法:

#import psutil

#mem=psutil.virtual_memory() # 获取内存完整信息

#print(mem)

#mem.total # 获取内存总数

#mem.free # 获取空闲内存数

#psutil.swap_memory() # 获取swap分区信息

磁盘信息:

磁盘信息主要包括以下几个部分:

  1. Read_count(读IO数)
  2. Write_time(写IO数)
  3. Read_bytes(IO读字节数)
  4. Read_time(磁盘读时间)
  5. Write_time(磁盘写时间)

Psutil.disk_io_counters() 使用方法:

#import psutil

#psutil.disk_partitions() # 获取磁盘完整信息

#psutil.disk_usage('/') # 获取分区(参数) 使用情况

#psutil.disk_io_counters() # 获取硬盘总的IO个数、读写信息

#psutil.disk_io_counters(perdisk=True) # 'perdisk=True'参数获取单个分区IO个数、读写信息

网络信息:

网络信息主要包括以下几个部分:

  1. Bytes_sent(发送字节数)
  2. Bytes_recv(接收字节数)
  3. Packets_sent(发送数据包数)
  4. Packets_recv(接收数据包数)

Psutil.net_io_counters() 使用方法:

#import psutil

#psutil.net_io_counters() # 获取网络总的IO信息,默认pernic=False

#psutil.net_io_counters(pernic=True) # 输出每个网络接口的IO信息

其他系统信息:

#import psutil,datetime

#psutil.users() # 返回当前登录系统的用户信息

#psutil.boot_time() # 获取开机时间,以Linux时间戳格式返回

#datetime.datetime.formtimestamp(psutil.boot_time()).strftime('%Y-%m-%d %H:%M:%S') # 转换成自然时间格式

  

Python自动化运维——系统性能信息模块的更多相关文章

  1. Python自动化运维:技术与最佳实践 PDF高清完整版|网盘下载内附地址提取码|

    内容简介: <Python自动化运维:技术与最佳实践>一书在中国运维领域将有“划时代”的重要意义:一方面,这是国内第一本从纵.深和实践角度探讨Python在运维领域应用的著作:一方面本书的 ...

  2. Day1 老男孩python自动化运维课程学习笔记

    2017年1月7日老男孩python自动化运维课程正式开课 第一天学习内容: 上午 1.python语言的基本介绍 python语言是一门解释型的语言,与1989年的圣诞节期间,吉多·范罗苏姆为了在阿 ...

  3. python自动化运维学习第一天--day1

    学习python自动化运维第一天自己总结的作业 所使用到知识:json模块,用于数据转化sys.exit 用于中断循环退出程序字符串格式化.format字典.文件打开读写with open(file, ...

  4. 【目录】Python自动化运维

    目录:Python自动化运维笔记 Python自动化运维 - day2 - 数据类型 Python自动化运维 - day3 - 函数part1 Python自动化运维 - day4 - 函数Part2 ...

  5. python自动化运维篇

    1-1 Python运维-课程简介及基础 1-2 Python运维-自动化运维脚本编写 2-1 Python自动化运维-Ansible教程-Ansible介绍 2-2 Python自动化运维-Ansi ...

  6. Python自动化运维的职业发展道路(暂定)

    Python职业发展之路 Python自动化运维工程 Python基础 Linux Shell Fabric Ansible Playbook Zabbix Saltstack Puppet Dock ...

  7. Python自动化运维 技术与最佳实践PDF高清完整版免费下载|百度云盘|Python基础教程免费电子书

    点击获取提取码:7bl4 一.内容简介 <python自动化运维:技术与最佳实践>一书在中国运维领域将有"划时代"的重要意义:一方面,这是国内第一本从纵.深和实践角度探 ...

  8. python自动化运维之CMDB篇-大米哥

    python自动化运维之CMDB篇 视频地址:复制这段内容后打开百度网盘手机App,操作更方便哦 链接:https://pan.baidu.com/s/1Oj_sglTi2P1CMjfMkYKwCQ  ...

  9. python自动化运维之路~DAY5

    python自动化运维之路~DAY5 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模块的分类 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数 ...

随机推荐

  1. JS 排序:冒泡、 二分搜索 /折半搜索 half-interval search

    冒泡排序:  重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来. var arr = [5,0,-56,900,12]; //大的排序次数 for(var i=0; i& ...

  2. 使用while循环+try-except定位元素

    selenium学习过程中,发现自己遇到的最大的困难不是那些元素的操作,而是元素的定位,有时候明明利用firebug将xpath路径确认好了,但是在定位元素的时候还是会报错,后来在度娘上找到了一个方法 ...

  3. css relative

    一.relative和absolute相煎关系 relative限制absolute 1.限制left/top/right/bottom定位 如果父元素有relative,只能根据父元素进行定位 2. ...

  4. 2018.12.17 struts.xml 配置自定义拦截器配置

    自定义拦截器有三个步骤哦 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PU ...

  5. 【洛谷P1196】[NOI2002]银河英雄传说

    银河英雄传说 题目链接 并查集时记录下以i为首的队列的长度(如果存在这个队列)num[i],便于合并, 和点i到队首的距离front[i],便于查询(在find时维护) #include<ios ...

  6. HDU 2005 第几天?(闰年判断)

    传送门: acm.hdu.edu.cn/showproblem.php?pid=2005 第几天? Time Limit: 2000/1000 MS (Java/Others)    Memory L ...

  7. Storm处理流程, 基本参数配置

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAksAAAG/CAYAAABIVpOQAAAABHNCSVQICAgIfAhkiAAAIABJREFUeF

  8. 【Oracle】三个配置文件tnsnames-listener-sqlnet介绍【转】

    转自:博客园-oracle: listener.ora .sqlnet.ora .tnsnames.ora的配置及例子 介绍三个配置文件 1)listener.ora 2)sqlnet.ora 3)t ...

  9. Openresty最佳案例 | 第6篇:OpenResty连接Mysql

    转载请标明出处: http://blog.csdn.net/forezp/article/details/78616698 本文出自方志朋的博客 centos 安装mysl Centos系统下安装my ...

  10. Django-rest-framework(六)filter,ordering,search

    filter queryset 使用request.user相关的queryset class PurchaseList(generics.ListAPIView): serializer_class ...