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


相关推荐

  • SparkIV「建议收藏」

    SparkIV「建议收藏」SparkIVSparkIV是知名游戏GTA4的一款游戏资源读取/导入/导出/编辑/修改的修改软件。很多玩家使用SparkIV为GTA4安装车辆MOD,人物MOD,武器MOD等。不过Spar

    2022年8月5日
    17
  • ireport 分页_sql组内分组

    ireport 分页_sql组内分组1、创建订单表et_order,并插入数据2.创建订单明细表et_order_detail,并插入数据3.不分组显示,将字段放入detail部分预览效果4.按照订单ID分组打印报表展示,点击模板名称,然后右键选择addreportgroup5.创建分组名称和分组字段6.分组包含了3部分,头部。明细。尾部,标题想要每张纸都显示,则需要放在pageheader块中7.最终效果…完美的达到了自己需要的效果。…

    2022年9月10日
    2
  • J2ME开发专题[通俗易懂]

    J2ME开发专题[通俗易懂]http://www.csdn.net/subject/j2meTools/ 

    2022年7月11日
    15
  • Nginx+DNS负载均衡「建议收藏」

    Nginx+DNS负载均衡「建议收藏」今天看了很多关于nginx负载均衡的博客,人家推荐的都是自己的ip来做负载,但是同样有说DNS负载均衡,刚开始我也是一头雾水,慢慢的分析才知道真正意义上的Nginx+DNS负载均衡。1.nginx负载均衡的5种策略(先了解这个后面的才好懂)轮询策略(默认)这种策略下每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。upstreambackserver{server192.168.0.14;server192.168.0.15;}指定

    2022年7月14日
    35
  • Hive 基本语法操练(二):视图和索引操作

    Hive 基本语法操练(二):视图和索引操作

    2022年4月2日
    54
  • sqlyog激活成功教程版安装_sqlyog是什么软件

    sqlyog激活成功教程版安装_sqlyog是什么软件百度云:链接:http://pan.baidu.com/s/1eSMEzIE密码:ubi2转载于:https://www.cnblogs.com/haxianhe/p/9271097.html

    2022年9月24日
    5

发表回复

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

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