Python之监控服务器性能

模块:psutil

简介:获取服务器cpu使用率以及内存使用率,网络出入流量,以及计算磁盘使用大小

improt psutil
##获取cpu信息
def cpu():
	import psutil
	psutil.cpu_percent()						#查看cpu使用率
	psutil.cpu_count()							#获取CPU的逻辑个数
	psutil.cpu_count(logical=False)				#获取CPU的物理个数
	psutil.cpu_times(percpu=True)				#获取CPU的全部信息
	psutil.cpu_times().user1					#获取user1使用CPU的时间比

##获取内存信息
def memory():
	import psutil
	psutil.virtual_memory()						#获取memory所有信息
	psutil.virtual_memory().total				#获取内存的总数
	psutil.virtual_memory().free				#获取内存空闲数
	psutil.swap_memory()						#获取swap分区的所有信息
	psutil.swap_memory().total 					#获取swap分区总数
	psutil.swap_memory().free					#获取swap分区空闲数

##获取磁盘信息
def disk():
	import psutil
	psutil.disk_partitions()					#获取磁盘的所有信息
	psutil.disk_usage("sda1")					#获取sda1的磁盘使用情况
	psutil.disk_io_counters(perdisk=True)		#获取单个分区IO个数

##获取网络信息
def net():
	import psutil
	psutil.net_io_counters()					#获取网络总的IO信息
	psutil.net_io_counters(pernic=True)			#输出每个网络接口的IO信息

##获取当前登录用户信息 
def user():
	import psutil
	psutil.users() 

##获取机器启动时间
def boottime():
	import psutil,datetime
	psutil.boot_time()
	datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d %H: %M: %S")	#转换为标准的时间格式

#系统进程
def pid():
	import psutil
	psutil.pids()								#列出所有的pid
	pid1 = psutil.Process(254)					#实例化一个PID
	pid1.name()									#获取进程名字
	pid1.exe()									#获取进程bin路径
	pid1.cwd()									#获取进程工作目录的绝对路径
	pid1.status()								#获取进程状态
	pid1.uid()									#获取进程uid信息
	pid1.gid()									#获取进程gid信息
	pid1.cpu_times()							#进程CPU时间信息
	pid1.memory_percent()						#进程内存利用率
	pid1.memory_info()							#进程内存rss和vms信息
	pid1.io_counters()							#进程IO信息
	pid1.connections()							#打开进程的socket的namedutples列表,包括fs,family,laddr等信息
	pid1.num_threads()							#进程开启的线程数

##pop类实现获取用户启动的应用程序进程信息
def pop():
	import psutil
	from subprocess import PIPE
	pid2 = psutil.Popen(["/usr/bin/python","-c","print('Hello word')"],stdout=PIPE)
	p.name()
	p.username()
发布了62 篇原创文章 · 获赞 16 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_41674452/article/details/103973710