银河麒麟v10中可借助系统监视器(5分钟曲线)、sar命令(10分钟粒度、7天历史)及top批处理日志(自定义采样)回溯进程资源波动。

如果您需要在银河麒麟V10中回溯分析某个进程在过去几分钟或几十分钟内的CPU、内存波动趋势,而非仅看当前瞬时快照,就必须借助系统自带的资源历史记录功能或启用日志化监控工具。
使用系统监视器查看近5分钟资源曲线
系统监视器默认开启资源采样,会自动保存最近5分钟的CPU、内存、磁盘IO和网络流量变化曲线,无需额外配置。
1. 点击开始菜单 → 搜索“系统监视器” → 回车打开。
2. 切换到“资源”选项卡,界面底部即显示四条实时更新的彩色曲线图。
3. 将鼠标悬停在曲线上任意位置,可精确看到该时间点(精确到秒)的数值;横向拖动鼠标可平移查看不同时间段——注意:该视图仅保留最近5分钟数据,超出即被覆盖。
4. 若需定位某进程是否在3分钟前出现过CPU尖峰,先在“进程”选项卡中右键该进程 → 选择“高亮显示”,再切回“资源”选项卡观察对应时段曲线是否同步抬升。
用sar命令提取历史系统活动报告
sar(System Activity Reporter)是sysstat套件的核心工具,银河麒麟V10默认已安装并启用后台采集服务,每10分钟记录一次系统级指标,数据默认保留7天。
方法一:查看今天内每10分钟的全局CPU占用汇总
sar -u | tail -n +4
方法二:筛选出指定进程名的历史CPU峰值(需配合pidstat)
① 先查出目标进程的历史PID(例如名为nginx):sudo pidstat -p ALL -h | grep nginx | head -n 1 | awk '{print $2}'
② 再用该PID查询其过去2小时内每10分钟的CPU使用率:sar -u -p 【填入上步得到的PID】 -s $(date -d '2 hours ago' +%H:%M:%S) | grep -v 'Average\|Linux'
⚠️ 注意:若执行sar命令提示“Cannot open /var/log/sysstat/saXX: No such file or directory”,说明sysstat服务未运行,需先执行 sudo systemctl enable --now sysstat 启用采集。
手动启动top并记录滚动日志供回溯
当标准工具无法满足自定义时间粒度(如每30秒采样)时,可让top以批处理模式持续输出到文件,后续用文本工具分析。
1. 打开终端,执行:top -b -d 30 -n 120 > /tmp/process_log_$(date +%s).txt
这将连续运行120次(即60分钟),每次间隔30秒,把完整top输出追加进带时间戳的文件。
2. 运行期间不要关闭终端窗口,否则进程会被SIGINT中断。
3. 日志生成后,用grep过滤关键进程:grep "chrome" /tmp/process_log_*.txt | awk '{print $1,$9,$10}' —— 输出格式为“时间戳 CPU% MEM%”。











