| |
| """ |
| -------------------------------- |
| Time : 2024/3/21 11:50 |
| Author : Ning |
| Description : |
| xitong_jiankong.py |
| 系统内存、cpu使用情况检测 |
| -------------------------------- |
| """ |
| from loguru import logger |
| import requests, time, os, sys, re, json |
| import psutil |
| |
| |
| class xitong_jiankongs(): |
| def __init__(self): |
| pass |
| |
| def __del__(self): |
| pass |
| |
| |
| def neicun(self): |
| """ |
| 以适于人类可读方式显示内存信息。-h与其他命令最大不同是-h选项会在数字后面加上适于人类可读的单位 |
| free -h |
| """ |
| mem = psutil.virtual_memory() |
| |
| zj = round(float(mem.total) / 1024 / 1024 / 1024, 2) |
| |
| ysy = round(float(mem.used) / 1024 / 1024 / 1024, 2) |
| |
| kx = round(float(mem.free) / 1024 / 1024 / 1024, 2) |
| keyong = round(float(mem.available) / 1024 / 1024 / 1024, 2) |
| logger.info(f"可用内存:{keyong}") |
| |
| yishiyong = mem.percent |
| logger.info(f"内存大小为:{zj}GB,已使用:{ysy}GB,可用:{kx}GB,已使用:{yishiyong}%") |
| |
| |
| def cpu(self): |
| """ |
| # 查看物理CPU个数 |
| cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l |
| # 查看每个物理CPU中core的个数(即核数) |
| cat /proc/cpuinfo| grep "cpu cores"| uniq |
| # 查看逻辑CPU的个数 |
| cat /proc/cpuinfo| grep "processor"| wc -l |
| """ |
| |
| |
| cpu_count = psutil.cpu_count() |
| logical = psutil.cpu_count(logical=False) |
| shiyonglv = psutil.cpu_percent(interval=1) |
| logger.info(f"CPU配置为:{logical}核,{cpu_count}处理器,使用率:{shiyonglv}%") |
| return |
| cpu_time = psutil.cpu_times() |
| logger.debug(cpu_time) |
| logger.info(psutil.cpu_times_percent()) |
| logger.info(psutil.cpu_stats()) |
| logger.info(psutil.cpu_freq()) |
| logger.info(psutil.getloadavg()) |
| p = psutil.cpu_times(percpu=True) |
| s = psutil.cpu_times().user |
| logger.debug(p) |
| logger.debug(s) |
| |
| |
| |
| |
| logger.info(psutil.cpu_percent()) |
| logger.info(psutil.cpu_percent(interval=1)) |
| logger.info(psutil.cpu_percent(interval=None)) |
| |
| |
| logger.info(psutil.cpu_percent(interval=1, percpu=True)) |
| |
| logger.info(psutil.cpu_percent(interval=None, percpu=False)) |
| |
| |
| |
| def main(self): |
| self.neicun() |
| self.cpu() |
| |
| |
| xitong_jiankong = xitong_jiankongs() |
| if __name__ == "__main__": |
| xitong_jiankong.main() |
| logger.debug("========程序运行结束========") |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人