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字符串使用详解

    Python字符串使用详解除了数字,Python中最常见的数据类型就是字符串,无论那种编程语言,字符串无处不在。例如,从用户哪里读取字符串,并将字符串打印到屏幕显示出来。字符串是一种数据结构,这让我们有机会学习索引和切片——用于从字符串中提取子串的方法。1字符串索引在Python语法支持中,我们简单的阐述过字符串的使用,现在我们看看python程序在处理字符串时,如何对其进行索引,打印出其中的每个字符串。我们输入一个字符串:’你好,Lucky’,Python使用方括号[]来对字符串进行索引,方括号内的数字0~n表

    2025年7月29日
    3
  • jmeter做接口压力测试_jmeter接口性能测试

    jmeter做接口压力测试_jmeter接口性能测试jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单。因为jmeter是java开发的,所以运行的时候必须先要安装jdk才可以。jmeter是免安装的,拿到安装包之后直接解压就可以使用,同时它在linux/windows/macos上都可以使用。  jmeter可以做接口测试和压力测试。其中接口测试的简单操作

    2022年9月26日
    4
  • SpringBoot笔记(2)

    SpringBoot笔记(2)

    2021年11月12日
    53
  • 2048 Puzzle游戏攻略

    2048 Puzzle游戏攻略

    2022年1月2日
    64
  • Linux环境redis集群搭建「建议收藏」

    (要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下)127.0.0.1:7000127.0.0.1:7001127.0.0.1:7002127.0.0.1:7003127.0.0.1:7004127.0.0.1:7005 1、安装redis上传服务器,解压,编译

    2022年4月16日
    40
  • PHP常见面试题_php面试常问面试题

    PHP常见面试题_php面试常问面试题一.基本知识点1.1HTTP协议中几个状态码的含义:503500401403404200301302。。。200:请求成功,请求的数据随之返回。301:永久性重定向。302:暂时行重定向。401:当前请求需要用户验证。403:服务器拒绝执行请求,即没有权限。404:请求失败,请求的数据在服务器上未发现。500:服务器错误

    2022年8月27日
    5

发表回复

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

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