cpustat 是一个用于监控和分析 CPU 使用情况的命令行工具,它是 sysstat 包的一部分。要使用 cpustat 分析 CPU 负载历史,你需要按照以下步骤操作:
安装 sysstat:
如果你的系统上还没有安装 sysstat,你可以使用包管理器来安装它。例如,在基于 Debian 的系统(如 Ubuntu)上,你可以使用以下命令安装:
sudo apt-get update
sudo apt-get install sysstat
在基于 Red Hat 的系统(如 CentOS 或 Fedora)上,你可以使用:
sudo yum install sysstat
或者
sudo dnf install sysstat
收集数据:
cpustat 默认会显示当前时刻的 CPU 统计信息。如果你想查看历史数据,你需要确保 sysstat 的历史数据收集功能已经启用。这通常涉及到编辑 /etc/default/sysstat 文件,并确保 ENABLED 设置为 "true"。
sudo nano /etc/default/sysstat
确保以下行没有被注释掉(没有 # 在行首):
ENABLED="true"
然后重启 sysstat 服务以应用更改:
sudo systemctl restart sysstat
查看历史数据:
sysstat 会将历史数据存储在 /var/log/sysstat/ 目录下的文件中,通常是 saXX 文件,其中 XX 是日期。你可以使用 cpustat 命令加上 -f 选项来指定要查看的文件:
cpustat -f /var/log/sysstat/saXX
替换 XX 为你想要查看的日期。
分析数据:
cpustat 提供了多种选项来定制输出,例如,你可以使用 -u 选项来显示用户、系统和空闲时间的百分比,或者使用 -m 选项来显示每个 CPU 的详细信息。
你也可以使用 -P ALL 来显示所有 CPU 的统计信息,或者指定特定的 CPU,如 -P 0 只显示第一个 CPU 的信息。
cpustat -u -P ALL
长期监控:
如果你想长期监控 CPU 负载,可以考虑将 cpustat 的输出重定向到一个文件中,或者使用 watch 命令来实时监控输出。
watch -n 1 cpustat -u -P ALL
这将每秒更新一次 CPU 负载信息。
请记住,cpustat 提供的是实时或近实时的数据,而不是真正的历史数据。如果你需要长期的历史数据记录,可能需要考虑使用其他工具或服务来收集和存储这些数据。