CPU信息

1. 查看CPU信息:cpu_times()

以namedtuple的形式返回系统范围内的CPU时间。每个CPU时间表示CPU在给定模式下花费的秒数。
percpu为True时,返回每个CPU的命名元组列表。列表的第一个元素指的是第一个CPU,第二个元素指的是第二个CPU,以此类推。列表的顺序在调用之间是一致的。


也可以针对单个信息查看

2. cpu个数:cpu_count()

返回系统中逻辑cpu的数量(与Python 3.4中的os.cpu_count()相同)。如果logical为False,则只返回物理内核的数量(例如,不包括超线程cpu)。如果未确定,则返回None。返回值在第一次调用后缓存。如果需要,可以这样清除缓存:psutil.cpu_count.cache_clear()

cpu利用率:cpu_percent()

返回一个浮点数,该浮点数表示当前系统范围内CPU利用率的百分比。当interval为>0时,比较在该interval(阻塞)之前和之后系统CPU运行的时间。当interval为0.0或None时,比较自上次调用或模块导入以来经过的系统CPU时间,立即返回(非阻塞)。这意味着第一次调用它将返回一个无意义的0.0值,您应该忽略这个值。在这种情况下,为了准确起见,建议在两次调用之间至少用0.1秒调用此函数。当percpu为True时,返回一个浮点数列表,表示每个CPU的利用率百分比。列表的第一个元素指的是第一个CPU,第二个元素指的是第二个CPU,以此类推。列表的顺序在调用之间是一致的。

cpu利用率详细:cpu_times_percent()

与cpu_percent()相同,但是提供cpu_times()返回的每个特定CPU时间的利用率百分比。例如,在Linux上,我们将得到:

cpu_times_percent ()cpupercent(user=4.8, nice=0.0, system=4.8, idle=90.5, iowait=0.0,irq=0.0, softirq=0.0, steal=0.0, guest=0.0, guest_nice=0.0)>>>intervalpercpu参数与cpu_percent()中的含义相同。

内存信息

内存信息的获取主要使用virtual_memory方法。swap使用就用swap_memory方法。

1. virtual_memory()

以namedtuple的形式返回关于系统内存使用情况的统计信息包括以下字段,以字节表示:-总:可用的物理内存总量。——可用:可以立即分配给进程的内存,而不需要系统进入交换。这是通过对不同平台的不同内存值求和来计算的,它应该用于以跨平台的方式监视实际内存使用情况。- %:使用百分比计算为(total - available) / total * 100-使用:所使用的内存,根据平台的不同计算不同,仅用于信息目的:macOS:活动+非活动+有线BSD:活动+有线+缓存Linux:完全免费-免费的:可用的内存根本没有被使用(0);注意,这并没有反映实际可用内存(而是使用“available”)

2. swap_memory()

返回系统交换内存统计数据作为一个命名元组包括以下字段:

  • total:以字节为单位的总交换内存
  • used:以字节为单位使用的交换内存
  • free:以字节为单位的自由交换内存
  • 百分比:使用百分比
  • sin:没有。系统从磁盘交换进来的字节数(累计)
  • sout:没有。系统从磁盘交换出来的字节数(累计)

磁盘信息

磁盘信息主要有两部分,一个是磁盘的利用率,一个是io,他们分别可以通过disk_usage和disk_io_counters方法获取。

1. disk_partitions()

返回挂载分区的列表(设备、挂载点、fstype、opts) namedtuple。“opts”字段是一个原始字符串,由逗号分隔,表示装载选项,这些选项可能随平台的不同而不同。如果all参数为False,则只返回物理设备,忽略其他所有参数。

2. disk_io_counters()

返回系统磁盘I/O统计数据作为一个命名元组,包括

  • read_count:读取的次数- write_count:写的次数
  • read_bytes:读取的字节数
  • write_bytes:写入的字节数
  • read_time:从磁盘读取的时间(以ms为单位
  • write_time:写入磁盘的时间(以ms为单位)特定于平台的:
  • busy_time: (Linux, FreeBSD)用于实际I/Os的时间(以ms为单位)
  • read_merged_count (Linux):合并读取的数量
  • write_merged_count (Linux):合并写入的数量
  • 如果perdisk为真,则为系统上安装的每个物理磁盘返回相同的信息,作为一个字典,分区名称作为键,上面描述的namedtuple作为值。如果nowrap为真,它将检测并调整溢出和换行的数字(从0重新启动),并将“旧值”添加到“新值”,以便返回的数字将始终增加或保持不变,但不会减少。“disk_io_counter .cache_clear()”可用于使缓存无效。在最近的Windows版本’diskperf -y’命令可能需要先执行,否则该函数将找不到任何磁盘。

默认disk_io_counters方法获取的是硬盘总的io数和读写信息,如果需要获取单个分区的io和读写信息加上"perdisk=True"参数

网络信息

1. 网络总的io情况:net_io_counters()

返回网络I/O统计数据作为一个命名元组,包括以下字段:

  • bytes_sent:发送的字节数
  • bytes_recv:接收的字节数
  • packets_sent:发送的数据包数量
  • packets_recv:接收到的数据包数量
  • errin:接收错误的总数
  • errout:发送时错误的总数
  • dropin:被丢弃的传入包的总数
  • dropout:被丢弃的发送包的总数(macOS和BSD总是0)
  • 如果pernic为真,则为每一个返回相同的信息网络接口作为字典安装在系统上使用网络接口名称作为键和namedtuple上面描述的值。如果nowrap为真,它将检测并调整溢出的数字然后换行(从0重新启动),并将“旧值”添加到“新值”中返回的数字总是在增加或保持不变,但从未减少。“disk_io_counter .cache_clear()”可用于使缓存。

如果需要获取单个网卡的io信息,加上pernic=True参数。

系统信息

系统的开机时间:boot_time()

系统硬件温度:sensors_temperatures()

(返回值目前没有弄清楚具体的含义,有了解的,希望可以不吝赐教)

PS:psutil.test()

psutil还提供了一个test()函数,可以模拟出ps命令的效果:

python模块psutil 获取系统信息相关推荐

  1. python使用psutil获取系统(Windows Linux)所有运行进程信息实战:CPU时间、内存使用量、内存占用率、PID、名称、创建时间等;

    python使用psutil获取系统(Windows Linux)所有运行进程信息实战:CPU时间.内存使用量.内存占用率.PID.名称.创建时间等: psutil模块可以跨平台使用,支持Linux/ ...

  2. 利用python模块pandas获取网页表格,并保存为excel

    文章只用于学习交流 利用python模块pandas获取网页表格. 网页上的表格内容,想要保存下来,有没有办法呢?答案是有的. 主要有两个步骤, 一是读取表格内容, 二是保存读取后的内容. 在这里只讲 ...

  3. python psutil 进程cpu_python 模块psutil获取进程信息

    获取进程信息 接续上篇<python 常用内建模块之psutil>安装psutil,并且获取一些基本信息,本篇介绍通过psutil获取到所有进程的详细信息: 1. 获取所有进程ID pri ...

  4. 易语言python模块_Python获取指定模块基址

    image 因为昨天研究FPS游戏时候,发现有个动态地址每次重启电脑都会不同,然后因为有过用C和易语言编写指定模块名获取基址的经验,所以打算用Python来试试 在网上搜索了一点资料,发现有吾爱有一篇 ...

  5. python locust提取参数_Locust利用python模块psutil监控性能指标

    简介 psutil是一个开源切跨平台的库,其提供了便利的函数用来获取操作系统的信息,比如CPU,内存,磁盘,网络等.此外,psutil还可以用来进行进程管理,包括判断进程是否存在.获取进程列表.获取进 ...

  6. python psutil 获取命令历史_Python使用psutil获取进程信息的例子

    psutil是什么 psutil是一个能够获取系统信息(包括进程.CPU.内存.磁盘.网络等)的Python模块.主要用来做系统监控,性能分析,进程管理,像glances也是基于psutil写成的. ...

  7. Python获取磁盘使用信息,python获取GPU信息,python根据进程号获取进程信息,pynvml 获取GPU信息,psutil 获取进程信息,系统信息等

    一.工具:psutil模块 psutil是一个跨平台模块,试用相应方法可以直接获取计算机CPU,内存,磁盘,网络等资源使用情况:可以使用我们学习知识与这模块用来做系统监控,性能分析:如果大家熟悉Lin ...

  8. python 根据名称获取pid_【Python学习笔记】76、常用第三方模块psutil

    用Python来编写脚本简化日常的运维工作是Python的一个重要用途.在Linux下,有许多系统命令可以让我们时刻监控系统运行的状态,如ps,top,free等等.要获取这些系统信息,Python可 ...

  9. python第三方模块—psutil模块

    系统基础信息采集模块作为监控模块的重要组成部分,能够帮助运维人员了解当前系统的健康程度,同时也是衡量业务的服务质量的依据,比如系统资源吃紧,会直接影响业务的服务质量及用户体验,另外获取设备的流量信息, ...

最新文章

  1. 上升沿判断语句_FPGA入门系列6判断语句
  2. Python Tools for Machine Learning
  3. 加工中心刻字宏程序_FANUC OI系列图书车床、铣床及加工中心编程
  4. 51nod 1011 最大公约数GCD
  5. 携程回应突发故障:「bug已修复」;罗永浩再嘲iPhone11浴霸相机;React 16.10.0发布|极客头条...
  6. Android studio R文件丢失或错误解决方法
  7. 【Wonder整理】防止重复提交并弹出半透明对话框
  8. tcpip路由技术卷一_学网络拿高薪!「纯干货」IELAB路由技术问题总结1
  9. Java Programming Review 02
  10. laravel框架自带登录注册
  11. linux iozone测试工具,IOZONE测试工具使用方法
  12. 用Delphi编写的一个上网助手
  13. 三丰三坐标编程基本步骤_贴片机编程教程,编程步骤,编程怎么编
  14. 轻量级openpose解析
  15. ZOJ3551 Bloodsucker(概率dp)
  16. termux—手机远程连接服务器教程
  17. 移动支付模式方面的技术
  18. 设计简约风格节约用水公益海报的PS教程
  19. Python+PyCharm+PyTorch+Cuda/GPU 安装步骤
  20. java之xml进阶教程——使用castor框架

热门文章

  1. 在centos7上基于rocm成功源码编译pytorch(pytorch1.6.0 + rocm3.3 + vision0.7.0)以及rocm的更换版本步骤
  2. Json在Qt中的使用
  3. 无惧断供,国产也能轻松替换“IOE”
  4. 感恩工作平台心得体会_读感恩你的工作心得体会
  5. Screened Poisson Surface Reconstruction (Version 8.0)
  6. VTK -SurfaceReconstruction
  7. 一切为了用户体验:揭秘京东首页改版背后的故事
  8. 压死骆驼的最后一根稻草——写下自己的阶段感受与总结
  9. 苹果炉石传说显示无法连接服务器,《炉石传说》无法连接到战网解决方法 无法连接请检查网络连接如何快速解决...
  10. APP怎么推广才是对的?