在 CentOS 系統中,cpustat
是一個強大的工具,用于監控和分析 CPU 的使用情況。為了更全面地監控系統性能,通常需要將 cpustat
與其他監控工具結合使用。以下是一些結合使用的方法和示例:
top
或 htop
使用top
和 htop
提供了實時的系統監控界面,包括 CPU 使用率、內存使用情況等。你可以先運行 top
或 htop
來獲取一個整體的系統視圖,然后使用 cpustat
來獲取更詳細的 CPU 統計信息。
# 使用 cpustat 獲取 CPU 使用情況
sudo cpustat -P ALL
# 使用 top 查看具體進程的詳細信息
top
vmstat
使用vmstat
報告關于進程、內存、分頁、塊 I/O、陷阱和 CPU 活動的信息。你可以同時運行 vmstat
和 cpustat
來分別獲取系統級和 CPU 級的詳細信息。
# 運行 vmstat
vmstat
# 運行 cpustat
cpustat
iostat
使用iostat
提供了 CPU 使用情況和磁盤 I/O 統計信息。結合使用 iostat
和 cpustat
可以幫助你分析 CPU 性能問題是否與磁盤 I/O 有關。
# 運行 iostat
iostat -xc 1 5
# 運行 cpustat
cpustat -p ALL 1 5
你可以編寫一個 shell 腳本,定期運行 cpustat
并將輸出保存到日志文件中。同時,你可以在腳本中加入其他命令,如 top
、vmstat
或 iostat
,并將它們的輸出也保存到日志文件中。這樣,你就可以通過分析日志文件來監控系統的性能變化。
#!/bin/bash
# 每隔 5 秒運行一次 cpustat 和 vmstat,并將輸出保存到日志文件中
while true; do
cpustat -p ALL 1 > cpu_usage.log &
vmstat 1 > vmstat_output.log &
sleep 5
done
watch
命令實時監控watch
命令可以定期執行指定的命令并顯示其輸出。例如,你可以使用以下命令每秒刷新一次 cpustat
的輸出。
# 每秒刷新一次 cpustat 的輸出
watch -n 1 "cpustat -P ALL"
perf
使用perf
是 Linux 性能分析工具,提供了豐富的性能監控和分析功能。你可以結合使用 cpustat
和 perf
來獲取更全面的性能數據,并進行深入分析。
# 使用 perf 記錄 CPU 性能數據
sudo perf record -g
# 使用 perf report 分析數據
sudo perf report
dstat
進行多指標監控dstat
是一個多功能的實時監控工具,可以同時顯示 CPU、內存、磁盤 I/O、網絡流量等多個系統指標。通過將 cpustat
的輸出與 dstat
結合,可以更全面地了解系統的運行狀況。
# 安裝 dstat
sudo yum install dstat
# 使用 dstat 同時監控 CPU、內存、磁盤和網絡
dstat -c -d -m -n 1
cgroups
進行 CPU 占用率控制cgroups
是 Linux 內核的一個功能,可以創建 CPU 資源組并設置 CPU 使用配額。通過將 cpustat
與 cgroups
結合,可以實現對 CPU 占用率的精準控制。
# 安裝 sysstat
sudo yum install sysstat
# 創建控制組
sudo mkdir -p /sys/fs/cgroup/cpu/highcpu
# 設置 CPU 配額
echo 100000 | sudo tee /sys/fs/cgroup/cpu/highcpu/cpu.cfs_period_us
echo 80000 | sudo tee /sys/fs/cgroup/cpu/highcpu/cpu.cfs_quota_us
# 監控 CPU 使用
mpstat -P ALL 1
通過以上方法,你可以將 cpustat
與其他工具結合使用,實現對系統性能的全方位監控和管理。