python如何通过psutil获取服务器cpu、内存、磁盘使用率
作者:家乐福的搬砖日常 发布时间:2022-11-07 01:01:29
标签:python,psutil,服务器
psutil是一个跨平台的Python库,它允许你获取有关系统进程和系统资源使用情况的信息。它支持Windows、Linux、OS X、FreeBSD、OpenBSD和NetBSD等操作系统,并提供了一些非常有用的功能,如:
获取系统CPU使用率、内存使用率、磁盘使用率等信息。
获取进程列表、进程状态、进程CPU使用率、进程内存使用率、进程IO信息等。
杀死进程、发送信号给进程、挂起进程、恢复进程等操作。
使用psutil,可以很方便地监控系统的运行状况,诊断问题和优化性能。以下是一个简单的示例,演示如何使用psutil获取系统CPU使用率和内存使用率:
import psutil
# 获取磁盘使用率(windows),linux服务器可以获取根目录/下的磁盘使用率 disk_usage_C = psutil.disk_usage('/')
#disk_usage()方法可以获取指定路径的磁盘使用情况,返回一个namedtuple对象,包含total、used、free、percent四个属性,分别表示总容量、已用容量、可用容量和使用率。
disk_usage_C = psutil.disk_usage('C:')
print("C磁盘总体情况: ","总容量:",round(disk_usage_C.total/1073741824,2),"G"," 磁盘使用率:",disk_usage_C.percent, "%",sep='')
# sep='' 去除print()内空格,round(数值,2):保留两位小数 ,1G等于1,073,741,824byte
disk_usage_D = psutil.disk_usage('D:')
print("D磁盘使用率:","总容量:",round(disk_usage_D.total/1073741824,2),"G"," 磁盘使用率:",disk_usage_D.percent, "%",sep='')
disk_usage_E = psutil.disk_usage('E:')
print("E磁盘使用率:","总容量:",round(disk_usage_E.total/1099511627776,1),"T"," 磁盘使用率:",disk_usage_E.percent, "%",sep='')
# 获取内存使用率
#virtual_memory()方法可以获取系统内存使用情况,返回一个namedtuple对象,包含total、available、percent、used、free五个属性,分别表示总内存、可用内存、使用率、已用内存和可用内存。
mem = psutil.virtual_memory()
print("内存总量: ",round(mem.total/1073741824,2),"内存使用率:", mem.percent, "%")
# 获取CPU使用率
#cpu_percent()方法可以获取CPU使用率,可以指定采样间隔(默认为1秒),返回一个浮点数,表示CPU使用率
cpu_percent = psutil.cpu_percent(interval=1)
print("cpu核数: ",psutil.cpu_count(),"CPU使用率:", cpu_percent, "%")
来源:https://www.cnblogs.com/joyware/p/17339134.html
0
投稿
猜你喜欢
- 带农历的JavaScript日期时间,增加了农历使这款代码更具实用性,很不错,不但有农历,而且还可以显示民国计年,可以判断显示闰月、闰年等,
- python中with可以明显改进代码友好度,比如:with open('a.txt') as f:  
- 很多SQL Server程序员对子查询(subqueries)的使用感到困惑,尤其对于嵌套子查询(即子查询中包含一个子查询)。现在,就让我们
- 有时候很多朋友访问自己的asp或php等程序页面时出现一些错误,就是页面无法显示也没有详细的错误信息,就算iis中开启了显示详细的错误也不能
- 在产品开发中,由UED发起的项目越来越多,但是现在的问题是很难为其设定商业价值的目标。如果没有明确的商业价值目标,很多公司根本没办法花大成本
- 本文实例讲述了Python面向对象程序设计中类的定义、实例化、封装及私有变量/方法。分享给大家供大家参考,具体如下:1. 定义类python
- //关闭,父窗口弹出对话框,子窗口直接关闭this.Response.Write("<script language=jav
- 要想在不宽裕的页面展现丰富的内容,现在通用的做法使用tab,在一块区域通过tab切换来更换该区域的内容。这篇文章分析了tab设计很在理,今天
- 保存为.py文件后 运行脚本在后面添加进程名称即可 比如:python proinfo.py qq 即可获取QQ的进程信息,注意不区分大小写
- 1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败1008:数据库不存在,删除数据库失败1009:不能删除数
- 今天 大白 问了一个关于CSS权重的问题:关于选择器权重的问题 。class的权重是10 标签权重是 1 。比如说 p span{} 权重是
- IIf 函数 根据表达式的值,来返回两部分中的其中一个。语法IIf(expr, truepart, fal
- 这两天终于忍不住的去实验了一下,为什么网页的字体有时会显示成超级无敌难看的宋体呢?其实宋体不难看,难看的只是把它放在Leopard下,没有点
- 本文实例讲述了Python使用matplotlib绘图无法显示中文问题的解决方法。分享给大家供大家参考,具体如下:在python中,默认情况
- 第一次碰到这个问题的时候,确实不知道该怎么办,后来请教了一个大神,加上自己的理解,才了解是什么意思,这个东西写python的会经常用到,而且
- Guide to the Section 508 Standards for Electronic and Information Tech
- 一、什么是进程进程是执行中的程序,是资源分配的最小单位:操作系统以进程为单位分配存储空间,进程拥有独立地址空间、内存、数据栈等操作系统管理所
- 今天要处理通知书上的日期,写的一个处理程序,效率可能不是最优的,不过实现功能绝对没问题。注:月份和天要分>10,=10,<10三
- 运行MySQL Server 5.0安装程序“setup.exe”,出现如下界面: 安装向导启动,按“Next”继续:
- 先看看:css中class与id的区别及应用表单的name与id其实是同一个意思,都是为了标记对象名称。它们所不同的是:name是Netsc