系统监控练习----文科生的python自学之路(11)

系统监控练习----文科生的python自学之路(11)

“”"

1.思路

1.导入模块
2.定义变量保存CPU的使用率
3.定义变量保存内存使用率
4.定义变量保存硬盘信息
5.定义变量保存网络信息量
6.保存信息到日志文件
“”"

第三方库的说明:

psutil是一个开源切跨平台的库,其提供了便利的函数用来获取才做系统的信息,比如CPU,内存,磁盘,网络等。此外,psutil还可以用来进行进程管理,包括判断进程是否存在、获取进程列表、获取进程详细信息等。而且psutil还提供了许多命令行工具提供的功能,包括:ps,top,lsof,netstat,ifconfig, who,df,kill,free,nice,ionice,iostat,iotop,uptime,pidof,tty,taskset,pmap。

psutil是一个跨平台的库,在官方网站上查到其支持如下操作系统。

Linux
Windows
OSX
FreeBSD
OpenBSD
NetBSD
Sun Solaris
AIX
Works with Python versions from 2.6 to 3.X.

psutil包含了异常、类、功能函数和常量,其中功能函数用来获取系统的信息,如CPU、磁盘、内存、网络等。类用来实现进程的管理功能

2.代码

# 1.导入模块
import psutil
import datetime
# 2.定义变量保存CPU的使用率
cpu_per = psutil.cpu_percent(interval=0.5)
# 3.定义变量保存内存使用率
memory_info = psutil.virtual_memory()
# 4.定义变量保存硬盘信息  /根目录
disk_info = psutil.disk_usage("/")
# 5.定义变量保存网络信息
net_info = psutil.net_io_counters()
# 6.获取系统当前时间
current_time = datetime.datetime.now().strftime("%F %T")
# print(now_time)
# 7.拼接字符串

log_str =  "┌--------------------------------┬--------------------------┬-------------------------┬-------------------------┬--------------------------------┐\n"
log_str += "│              监控时间            │          CPU使用率        │         内存使用率        │         硬盘使用率        │         网络收发量               │\n"
log_str += "│                                │          (共%d核CPU)       │      (总计%.2f G内存)   │     (总计%.2f G硬盘)    │                                │\n" % (psutil.cpu_count(logical=False), memory_info.total/1024/1024/1024, disk_info.total/1024/1024/1024)
log_str += "├--------------------------------┼--------------------------┼-------------------------┼-------------------------┼--------------------------------┤\n"
log_str += "│        %s     │          %s %%          │          %s %%         │          %s %%         │ 收:%s  | 发:%s   │\n" % (current_time, cpu_per, memory_info.percent, disk_info.percent, net_info.bytes_recv, net_info.bytes_sent)
log_str += "└--------------------------------┴--------------------------┴-------------------------┴-------------------------┴--------------------------------┘\n"
print(log_str)

# 8.保存信息到日志文件
f = open("log.txt", 'a')
f.write('\n' + log_str + '\n')
f.close()

3.输出结果

C:\Users\wxl69\AppData\Local\Programs\Python\Python38\python.exe "C:/Users/wxl69/PycharmProjects/compass/0510 系统监控/01_系统监控.py"--------------------------------------------------------------------------------------------------------------------------------------------┐
│              监控时间            │          CPU使用率        │         内存使用率        │         硬盘使用率        │         网络收发量               │
│                                │          (4核CPU)(总计15.90 G内存)(总计237.23 G硬盘)    │                                │
├--------------------------------------------------------------------------------------------------------------------------------------------┤
│        2020-05-16 15:31:5830.9 %41.3 %38.5 %         │ 收:266855755  | 发:171643778   │
└--------------------------------------------------------------------------------------------------------------------------------------------┘

┌--------------------------------------------------------------------------------------------------------------------------------------------┐
│              监控时间            │          CPU使用率        │         内存使用率        │         硬盘使用率        │         网络收发量               │
│                                │          (4核CPU)(总计15.90 G内存)(总计237.23 G硬盘)    │                                │
├--------------------------------------------------------------------------------------------------------------------------------------------┤
│        2020-05-16 15:32:3633.7 %40.9 %38.5 %         │ 收:267925551  | 发:171828110   │
└--------------------------------------------------------------------------------------------------------------------------------------------┘



Process finished with exit code 0
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值