Python中psutil模块应用

Python中psutil模块应用psutil(Pythonsystemandprocessutilities)是python的系统监控及进程的管理的工具,是一个功能很强大的跨平台的系统管理库。官方文档(https://pythonhosted.org/psutil/)psutil是一个第三方的开源项目,因此,需要先安装才能够使用。pip3installpsutil获取psutil版本信息importpsu…

大家好,又见面了,我是你们的朋友全栈君。

psutil(Python system and process utilities)是python的系统监控及进程的管理的工具,是一个功能很强大的跨平台的系统管理库。
官方文档(https://pythonhosted.org/psutil/)

psutil是一个第三方的开源项目,因此,需要先安装才能够使用。
pip3 install psutil

获取psutil版本信息
import psutil
psutil.version_info

系统性能监测 demo
系统性能定时监控
1、能够显示当前服务器CPU的使⽤率
2、能够显示当前服务器内存的使⽤率
3、能够显示当前服务器硬盘的使⽤率
4、能够显示当前服务器⽹络的收发情况
5、能够显示CPU总核⼼数、总内存、总
6、能够保存⽇志信息到 系统监控报告.txt ⽂件中
7、能够直接执⾏脚本查看

import psutil
import datetime
import yagmail

# cup 使用率
cpu_info = psutil.cpu_percent(interval=0.5)

# 内存使用率
memory_info = psutil.virtual_memory().percent

# 硬盘的使⽤率
disk_info = psutil.disk_usage("/").percent

# ⽹络的收发情况
net_info = psutil.net_io_counters()
# print(net_info.bytes_sent)
# print(net_info.bytes_recv)

# 获取系统时间
time = datetime.datetime.now().strftime("%Y-%m-%d %T")
# print(type(time))

# CPU总核⼼数、总内存、总硬盘
cup_num = psutil.cpu_count()
virtual_num = psutil.virtual_memory().total / 1024 / 1024 / 1024
disk_num = psutil.disk_usage("/").total / 1024 / 1024 / 1024
# print(disk_num)


# 输出信息
sys_str = "|-------------------|-------------|-------------|------------|------------------|\n"
sys_str += "|监视时间            | CPU使用率      内存使用率  |  磁盘使用率 |    网络收发量         |\n"
sys_str += "|                   | (共%d核CPU)  |(共%.1fgG内存)|(共%.1fgG磁盘|                    |\n" % (
    cup_num, virtual_num, disk_num)
sys_str += "|-------------------|------------|------------|------------|--------------------|\n"
sys_str += "|%s|     %d%%     |     %d%%    |     %d%%    |收:%d发:%d|\n" % (
    time, cpu_info, memory_info, disk_info, net_info.bytes_sent, net_info.bytes_recv)
sys_str += "|-------------------|------------|------------|------------|--------------------|\n"

with open("系统监控报告.txt", "a", encoding="utf-8") as f:
    f.write(sys_str + '\n\n')


# 链接邮箱服务器
#  user@126.com 发件⼈邮箱
#  1234 发件⼈邮箱授权码(授权码,注意不是邮箱)
#  smtp.126.com ⽹易126邮箱发件服务器
yag = yagmail.SMTP(user="******@163.com", password="****", host="smtp.163.com")
#  邮箱正⽂
contents = sys_str
#  发送邮件
#  taaa@126.com 收件⼈邮箱
#  subject 邮件主题
yag.send('****@qq.com', '***', contents)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136376.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Python入门习题(40)——CCF CSP认证考试真题:报数游戏「建议收藏」

    Python入门习题(40)——CCF CSP认证考试真题:报数游戏「建议收藏」CCFCSP认证考试真题(201712-2):游戏问题描述解题思路参考答案测试用例小结问题描述试题编号: 201712-2试题名称: 游戏时间限制: 1.0s内存限制: 256.0MB问题描述  有n个小朋友围成一圈玩游戏,小朋友从1至n编号,2号小朋友坐在1号小朋友的顺时针方向,3号小朋友坐在2号小朋友的顺时针方向,……,1号小朋友坐在n号小朋友的顺时针方向。  游戏开始,从1…

    2022年9月3日
    2
  • Hwclock_clock命令

    Hwclock_clock命令hwclock(hardwareclock)功能说明:显示与设定硬件时钟。语  法:hwclock[–adjust][–debug][–directisa][–hctosys][–show][–systohc][–test][–utc][–version][–set–date=<日期与时间>]补充说明:在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是…

    2025年7月7日
    0
  • live2d 看板娘 简单添加看版娘到自己的网站

    live2d 看板娘 简单添加看版娘到自己的网站

    2022年2月20日
    48
  • 【网络】子网划分题目解析[通俗易懂]

    【网络】子网划分题目解析[通俗易懂]【网络】子网划分题目解题过程步骤一:划分分公司子网步骤二:划分分公司部门子网题目某集团公司,全国共设立12家分公司,每家分公司有4个部分组成,现在公司需要组建企业内部网络,总公司申请一个IP:172.16.0.0/16,试为该集团公司IP分配做出合理规划解题过程步骤一:划分分公司子网“全国共设立12家分公司”根据这句话可以明白至少要划分12个分公司子网,就需要我们查找2n≥12,依题意得24=16≥12,因此网络位向主机位借取4位,也就是用原有的16+4=20,那么子网掩码就是/20即2

    2022年6月27日
    26
  • 0xc0000005发生访问冲突解决_更改兼容性还是c0000005

    0xc0000005发生访问冲突解决_更改兼容性还是c0000005该异常代号对应“访问冲突”,即内存的读写权限冲突,一般意味着代码中存在3种可能的问题……

    2022年10月3日
    0
  • DDD理论学习系列(13)– 模块

    DDD理论学习系列(13)– 模块"DDD理论学习系列——案例及目录"1.引言Module,即模块,是指提供特定功能的相对独立的单元。提到模块,你肯定就会想到模块化设计思想,也就是功能的分解和组合。对于简单问

    2022年7月3日
    21

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号