Linux mpstat命令的方法(实时系统监控工具)
简介
mpstat是Multiprocessor Statistics的缩写,是实时系统监控工具。其报告与CPU的一些统计信息,这些信息存放在/proc/stat文件中。在多CPUs系统里,其不但能查看所有CPU的平均状况信息,而且能够查看特定CPU的信息。mpstat最大的特点是可以查看多核心cpu中每个计算核心的统计数据;而类似工具vmstat只能查看系统整体cpu情况。
mpstat命令指令主要用于多CPU环境下,它显示各个可用CPU的状态系你想。这些信息存放在/proc/stat文件中。在多CPUs系统里,其不但能查看所有CPU的平均状况信息,而且能够查看特定CPU的信息。
语法
mpstat(选项)(参数)
mpstat [-P {|ALL}] [ternal [count]] 参数 解释 -P {|ALL} 表示监控哪个CPU, cpu在[0,cpu个数-1]中取值 ternal 相邻的两次采样的间隔时间、 count 采样的次数,count只能和delay一起使用 当没有参数时,mpstat则显示系统启动以后所有信息的平均值。有terval时,第一行的信息自系统启动以来的平均信息。从第二行开始,输出为前一个terval时间段的平均信息。
选项
-P指定CPU编号。
参数
间隔时间每次报告的间隔时间(秒);
次数显示报告的次数。
实例
当mpstat不带参数时,输出为从系统启动以来的平均值。
mpstat Lux 2.6.9-5.31AXsmp (builder.redflag-lux.) 12/16/2005 09:38:46 AM CPU %user %nice %system %iowait %irq %soft %idle tr/s 09:38:48 AM all 23.28 0.00 1.75 0.50 0.00 0.00 74.47 1018.59
每2秒产生了2个处理器的统计数据报告
下面的命令可以每2秒产生了2个处理器的统计数据报告,一共产生三个terval 的信息,然后再给出这三个terval的平均信息。默认时,输出是按照CPU 号排序。第一个行给出了从系统引导以来的所有活跃数据。接下来每行对应一个处理器的活跃状态。
mpstat -P ALL 2 3 Lux 2.6.18-164.el5 (server.sys.) 01/04/2010 09:34:20 PM CPU %user %nice %sys %iowait %irq %soft %steal %idle tr/s 09:34:22 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 1001.49 09:34:22 PM 0 0.00 0.00 0.50 0.00 0.00 0.00 0.00 99.50 1001.00 09:34:22 PM 1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 0.00
比较带参数和不带参数的mpstat的结果
在后台开一个2G的文件
cat 1.img &
然后在另一个终端运行mpstat命令
mpstat Lux 2.6.18-164.el5 (server.sys.) 01/04/2010 10:17:31 PM CPU %user %nice %sys %iowait %irq %soft %steal %idle tr/s 10:17:31 PM all 0.07 0.02 0.25 0.21 0.01 0.04 0.00 99.40 1004.57