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. MySQL之innochecksum初探

    innochecksum是一个用于校验innodb表空间文件完整性的工具,这是一个官方自带的工具,关于它的介绍,可以查看MySQL官方文档,下文主要是通过innodb_ruby来对innochecks ...

  2. how find a record import other database.

    question:how find a record import other database. answer: solution one:you user insert into table_na ...

  3. WAKE-WIN10-SOFT-MATio

    1,matio Matio is an open-source C library for reading and writing binary MATLAB MAT files. This libr ...

  4. java基础重点: 面向对象,

    java分了5片内存. 1:寄存器.2:本地方法区.3:方法区.4:栈.5:堆. 栈:存储的都是局部变量 ( 函数中定义的变量,函数上的参数,语句中的变量 ):只要数据运算完成所在的区域结束,该数据就 ...

  5. 从头基于空镜像scratch创建一个新的Docker镜像

    我们在使用Dockerfile构建docker镜像时,一种方式是使用官方预先配置好的容器镜像.优点是我们不用从头开始构建,节省了很多工作量,但付出的代价是需要下载很大的镜像包. 比如我机器上docke ...

  6. Android Studio常用快捷键、Android Studio快捷键大全

    Android Studio 是谷歌基于IntelliJ IDEA开发的安卓开发工具,有点类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调 ...

  7. IT人们给个建议

    开篇声明:我本身是中学老师,师范类大学计算机专业毕业,现在马上研究生学位就要拿上了,平时在学校搞网络维护什么的,事少,业余时间充足,也不想拘泥于做老师拿点工资,觉得白学计算机了,所以也搞些业余开发,如 ...

  8. HDU 5687 Problem C 【字典树删除】

    传..传送:http://acm.hdu.edu.cn/showproblem.php?pid=5687 Problem C Time Limit: 2000/1000 MS (Java/Others ...

  9. fastJson简单实用

    public class FastJsonText { @Test public void text(){ User user1 = new User(); user1.setName("健 ...

  10. 整个ssd的网络和multibox_loss_layer

    总结说来prior_box层只完成了一个提取anchor的过程,其他与gt的match,筛选正负样本比例都是在multibox_loss_layer完成的 http://www.360doc.com/ ...