Python利用PsUtil实现实时监控系统状态
作者:Python 发布时间:2022-11-26 12:43:11
PSUtil是一个跨平台的Python库,用于检索有关正在运行的进程和系统利用率(CPU,内存,磁盘,网络,传感器)的信息。
它可以跨平台使用,在Linux,Windows和macOS上都能运行。
在本文中,我们将深入研究如何使用PSUtil模块来监控系统的各种资源。本文包括以下主题:
1.安装psutil模块
首先,我们需要安装psutil模块。可以使用以下命令来安装:
pip install psutil
2.获取系统信息
使用psutil.cpu_count()函数获取CPU数量:
import psutil
print("CPU数量:", psutil.cpu_count(logical=True))
可以看到,我们使用psutil.cpu_count()函数获取了系统中逻辑CPU的数量。
接下来,我们可以使用psutil.cpu_stats()函数获取CPU的统计信息:
import psutil
cpu_stats = psutil.cpu_stats()
print("CPU统计信息:", cpu_stats)
3.获取CPU信息
使用psutil.cpu_percent()函数获取CPU使用率:
import psutil
print("CPU使用率:", psutil.cpu_percent(interval=1))
可以看到,我们使用psutil.cpu_percent()函数获取了CPU的使用率。interval参数指定了时间间隔,单位为秒。
接下来,我们可以使用psutil.cpu_times()函数获取CPU的时间信息:
import psutil
cpu_times = psutil.cpu_times()
print("CPU时间信息:", cpu_times)
4.获取内存信息
使用psutil.virtual_memory()函数获取内存信息:
import psutil
memory = psutil.virtual_memory()
print("内存信息:", memory)
5.获取磁盘信息
使用psutil.disk_partitions()函数获取磁盘分区信息:
import psutil
partitions = psutil.disk_partitions()
print("磁盘分区信息:", partitions)
可以看到,我们使用psutil.disk_partitions()函数获取了系统中的磁盘分区信息。
接下来,我们可以使用psutil.disk_usage()函数获取磁盘使用情况:
import psutil
usage = psutil.disk_usage('/')
print("磁盘使用情况:", usage)
6.获取网络信息
使用psutil.net_io_counters()函数获取网络信息:
import psutil
net_io_counters = psutil.net_io_counters()
print("网络信息:", net_io_counters)
可以看到,我们使用psutil.net_io_counters()函数获取了网络的信息,包括发送和接收的字节数。
7.获取传感器信息
使用psutil.sensors_temperatures()函数获取传感器信息:
import psutil
sensors_temperatures = psutil.sensors_temperatures()
print("传感器信息:", sensors_temperatures)
可以看到,我们使用psutil.sensors_temperatures()函数获取了系统中的传感器信息。
8.使用psutil进行进程管理
使用psutil.process_iter()函数获取正在运行的进程:
import psutil
for process in psutil.process_iter():
print(process.name())
可以看到,我们使用psutil.process_iter()函数获取了正在运行的进程。
我们可以使用process对象的各种属性来获取进程的详细信息。
使用psutil.Process()函数获取特定进程的详细信息:
import psutil
process_id = 1234
process = psutil.Process(process_id)
print(process.name())
print(process.cpu_percent(interval=1))
print(process.memory_info().rss)
9.使用psutil进行系统监控
使用psutil实现一个简单的系统监控程序:
import time
import psutil
while True:
cpu_usage = psutil.cpu_percent(interval=1)
memory_usage = psutil.virtual_memory().percent
disk_usage = psutil.disk_usage('/').percent
network_usage = psutil.net_io_counters().bytes_sent + psutil.net_io_counters().bytes_recv
print("CPU使用率:", cpu_usage)
print("内存使用率:", memory_usage)
print("磁盘使用率:", disk_usage)
print("网络使用量:", network_usage)
time.sleep(1)
可以看到,我们使用psutil实现了一个简单的系统监控程序,可以实时监控CPU,内存,磁盘和网络的使用情况。
10.总结
本文介绍了如何使用psutil模块来监控系统的各种资源。我们可以使用psutil获取系统信息,CPU信息,内存信息,磁盘信息,网络信息和传感器信息。
我们还可以使用psutil进行进程管理和系统监控。psutil是一个非常强大的Python库,可以帮助我们编写高效的系统监控程序。
来源:https://mp.weixin.qq.com/s/i5Ucp6IyL2TGYMihsTs8EA


猜你喜欢
- 话不多说,直接附上源码,仅供参考封装了一下,要用的话直接调用下面getEvent函数即可function getEvent() { if (
- 本文实例讲述了nodejs简单实现TCP服务器端和客户端的聊天功能。分享给大家供大家参考,具体如下:服务器端var net = requir
- aes的gcm模式的加密和解密要给已有的系统启用加密解密,目前推荐的是aes的gcm模式的加密和解密,在微服务如果向前有公共方法处理 读取数
- 解决方案function mergeImgs(list) { const imgDom = document.createElement(&
- 不少需要用到sql2005的程序,有很多新手还是会操作,这里写个详细的图文教程送个菜鸟们,高手请飘过。适用于独立主机的朋友使用,如果你还没安
- 前提准备:1.使用python requests模块2.了解json3.zabbix api的具体调用建议先浏览一下官网先上代码:impor
- 在本文中,我将分享五个 Jupyter 扩展来提大家的工作效率。 欢迎收藏学习,喜欢点赞支持。技术交流群文末提供,欢迎畅聊。让我们开始吧!1
- 本篇博文主要讲解Python爬虫实例,重点包括爬虫技术架构,组成爬虫的关键模块:URL管理器、HTML下载器和HTML解析器。爬虫简单架构程
- 环境:windwos 10(1511) 64bit、mysql 5.7.14一、下载mysql1. 在浏览器里打开mysql的官网http:
- 一、简介从Python2.6开始,新增了str.format(),它增强了字符串格式化的功能。基本语法是通过 {} 和 : 来代替以前的 %
- 在VirtualBox中使用Ubuntu虚拟机中,会出现虚拟硬盘不够用的情况:查了一下磁盘空间,如下所示:df -H启动CMD命令行,进入V
- 1.插入语句1.1插入一行有两种:1.以小括号的形式这里注意:如果表名后边不加小括号对应内容,那么默认就是添加所有列2.以set形式inse
- 本文实例讲述了Python3删除排序数组中重复项的方法。分享给大家供大家参考,具体如下:给定一个排序数组,你需要在[原地]删除重复出现的元素
- 背景今天在工作中,同事遇到一个上传图片的问题:系统要求的图片大小不能超过512KB。但是同事又有很多照片。这要是每一个照片都用ps压缩的话,
- 一 前言公司同事最近在做excel相关的工作;今天来求助知识追寻者合并多个excel为一个一个工作本,原本是java操作poi太蛋疼了,笨重
- 本文详细讲述了python的内嵌time模块的用法。分享给大家供大家参考之用。具体分析如下: 一、简介time模块提供各种操作时
- Python2>>> >>> isinstance(b'abc', bytes)True
- p>在“服务”中手动启动,显示于是改从控制台启动:然后简单粗暴的找到...\MySQL Server 5.7\新建data文件夹以上所
- 对于字典的操作,本篇介绍的是在其中添加值的方法,下面带来详细的介绍。1、通过键=值的方式进行添加。如果键存在,则会将旧的值进行覆盖,如果不存
- 安装环境:CentOS7 64位 MINI版,安装MySQL5.71、配置YUM源在MySQL官网中下载YUM源rpm安装包:http://