CentOS系統中cpustat工具的日志記錄說明
cpustat是CentOS系統(通過sysstat包提供)用于監控CPU使用情況的命令行工具,默認不會自動保存運行日志,需通過手動配置實現日志記錄功能。
通過Shell命令將cpustat的輸出直接重定向到指定文件,適合臨時監控場景。例如:
cpustat -u 1 > /var/log/cpustat.log &
-u
:顯示用戶態CPU使用率(可選參數,還可使用-c
顯示整體CPU統計);1
:每1秒刷新一次數據;>
:覆蓋寫入日志文件;&
:后臺運行,避免阻塞終端。通過Shell腳本實現定時循環記錄,并添加時間戳以便后續分析。例如:
#!/bin/bash
LOGFILE="/var/log/cpu_usage.log"
INTERVAL=60 # 記錄間隔(秒)
for ((i=0; i<60; i++)); do # 循環60次(總時長60分鐘)
echo "===== $(date '+%Y-%m-%d %H:%M:%S') =====" >> "$LOGFILE"
cpustat -c 1 1 | tail -n +2 >> "$LOGFILE" # 忽略首行標題
sleep $INTERVAL
done
tail -n +2
:跳過cpustat輸出的標題行;chmod +x script_name.sh
。將上述腳本配置為cron定時任務,實現周期性自動記錄。例如,每分鐘記錄一次:
crontab -e
;* * * * * /usr/local/bin/monitor_cpu.sh >> /var/log/cpu_usage_cron.log 2>&1
monitor_cpu.sh
腳本,并將輸出追加到/var/log/cpu_usage_cron.log
中。/var/log/
),文件名可根據需求命名(如cpustat.log
、cpu_usage.log
);/var/log/sysstat/
目錄下的sarXX
文件(如sar01
、sar02
,對應每月1日、2日的統計數據),使用sar -u -f /var/log/sysstat/sar01
命令查看具體CPU使用情況。/var/log/
)存在且有足夠的寫入權限(建議使用sudo
執行相關命令);logrotate
工具),避免日志文件過大占用磁盤空間。