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)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 选择排序

    选择排序

    2021年11月13日
  • sqlserver 动态sql执行execute和sp_executesql

    sqlserver 动态sql执行execute和sp_executesqlsqlserver动态sql的执行,有两个方法execute和sp_executesql.其中第一个方法execute可以简写为exec.execute方法适合执行没有返回值的动态sql,sp_executesql可以获取到动态sql的返回值.二者比较起来,前者写起来简单,后者功能强大些,但写起来麻烦,使用的时候具体情况具体分析吧.  在function中不能使用exec和sp_exec

    2022年5月22日
  • 运行时异常和一般异常_异常代码c0000005

    运行时异常和一般异常_异常代码c0000005说到异常,大家都熟悉,只要程序出错了,那么肯定会说:“哎呀,我的程序出错啦~它抛出异常啦”。但单单以“异常”的名称来称呼它们,未免也太粗糙了。我们毕竟是一个精致的程序员,当然得知道他们到底都有哪些种类啦。这就好比一个优质的男朋友(比如本帅博主)必须能够精准地区分女朋友的口红色号一般。那Java到底有哪些异常呢?其实也不多,Java提供了两种错误的异常类,分别是Error和Excepti…

    2022年9月28日
  • oracle字符串自身去重,oracle拼接字符串函数(去重和不去重)「建议收藏」

    oracle字符串自身去重,oracle拼接字符串函数(去重和不去重)「建议收藏」oracle拼接字符串函数(去重和不去重)1.不去重FUNCTIONf_linkFunctionf_linkCREATEORREPLACEFUNCTIONf_link(p_strVARCHAR2)RETURNVARCHAR2PARALLEL_ENABLEAGGREGATEUSINGt_link;Typet_linkCREATEORREPLACETYPET_LINK…

    2022年9月20日
  • Java基础知识面试题(2020最新版)

    文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别OracleJDK和OpenJDK的对比基础语法数据类型Java有哪些数据类型switc…

    2022年4月18日
  • IntelliJ IDEA 2018.2 激活码(最新序列号破解)

    IntelliJ IDEA 2018.2 激活码(最新序列号破解),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日

发表回复

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

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