Linux系统出现莫名其貌CPU暴增情况安装统计

Viewed 2

Linux 中查看指定时间段的 CPU 暴增情况,需要结合历史监控工具和日志分析。

方法一:使用 sar命令(最推荐、最直接)

sar 它默认会按固定时间间隔收集系统活动数据并保存到文件中,非常适合回溯分析。
sudo apt-get install sysstat
sudo systemctl enable --now sysstat
ar的数据通常存储在 /var/log/sa/目录下,文件名为 saXX(XX 代表日期)。

查看当月23号的CPU使用情况

sar -f /var/log/sa/sa23
sar -u -d 23

语法:sar [选项] -s [开始时间] -e [结束时间] -f [数据文件]

sar -u -s 14:30:00 -e 15:00:00 -f /var/log/sa/sa25

每5秒采样一次,共采样12次(即监控1分钟)

sar -u 5 12
%user: 用户空间进程占用 CPU 百分比。
%system: 内核空间进程占用 CPU 百分比。
%iowait: CPU 等待 I/O 操作的百分比。这是发现 I/O 瓶颈导致 CPU 空闲假象的关键指标。
%idle: CPU 空闲百分比。
root@ser341022330464:~# sar -u 5 12
Linux 5.15.0-164-generic (ser341022330464) 01/27/26 x86_64 (12 CPU)

05:42:10 CPU %user %nice %system %iowait %steal %idle
05:42:15 all 0.23 0.00 0.28 0.07 0.00 99.42
05:42:20 all 0.32 0.00 0.33 0.02 0.00 99.33
05:42:25 all 0.25 0.00 0.28 0.00 0.00 99.47
05:42:30 all 0.40 0.00 0.37 0.00 0.00 99.23
05:42:35 all 0.38 0.00 0.33 0.00 0.00 99.28
05:42:40 all 0.27 0.00 0.35 0.00 0.00 99.38

方法二:使用 atop命令它能记录每个进程的详细资源使用情况,并且可以按时间回放。

直接输入 atop,你会看到一个彩色的、信息更丰富的界面。

默认按 CPU 使用率排序。
进入后,你可以使用快捷键切换排序和资源视图:
P: 按 CPU 使用排序(默认)。
M: 按内存使用排序。
D: 按磁盘活动排序。
N: 按网络活动排序。
C: 按累计 CPU 时间排序。
?: 获取所有快捷键帮助。
退出按 q。
atop的后台服务 atopacctd会定期(默认每 10 分钟,或在系统关机前)将进程活动转储到 /var/log/atop/目录下的文件中,文件名格式为 atop_YYYYMMDD。

执行回放命令

atop -r /path/to/atop_log_file -b HH:MM -e HH:MM
sudo atop -r /var/log/atop/atop_20231025 -b 14:30 -e 15:00

0 Answers
Related