简介:
mpstat是Multiprocessor Statistics的缩写,是实时系统监控工具。其报告与CPU的一些统计信息,这些信息存放在/proc/stat文件中。在多CPUs系统里,其不但能查看所有CPU的平均状况信息,而且能够查看特定CPU的信息。mpstat最大的特点是:可以查看多核心cpu中每个计算核心的统计数据;而类似工具vmstat只能查看系统整体cpu情况。
语法:
mpstat [ -A ] [ -n ] [ -u ] [ -V ] [ -I { keyword [,...] | ALL } ] [ -N { node_list | ALL } ] [ -o JSON] [ -P { cpu_list | ON | ALL } ] [ interval [ count ] ]
-P {|ALL} 表示监控哪个CPU, cpu在[0,cpu个数-1]中取值
interval :间隔多久统计一次数据,可选
count:统计一次,可选
注意:若只传了 interval ,则统计次数是无限次,结束统计后会打印本次所有数据的平均值
命令行参数: -V:版本信息 -u:打印cpu统计信息,默认就是 -P:需要输出统计信息的cpu -o JSON:json格式输出结果 -I :报告中断情况
-P { cpu_list | ON | ALL }
作用
指定要报告其统计信息的 CPU
cpu_list:是用 , 分隔的值或值范围的列表(例如 0,2,4-7,0-1 )
ON:将为每个联机 CPU 报告统计信息
ALL:将为所有 CPU 报告统计信息
实例:
- 每隔 1s 统计打印一次数据,统计无限次
mpstat 1
- 每隔 2s 统计打印一次数据,共统计 5 次
mpstat 2 5
- 统计信息的字段说明
输出信息说明: CPU: 处理器编号。关键字all表示统计信息计算为所有处理器之间的平均值。 %usr: 显示在用户级(应用程序)执行时发生的CPU利用率百分比。 %nice: 显示以优先级较高的用户级别执行时发生的CPU利用率百分比。 %sys: 显示在系统级(内核)执行时发生的CPU利用率百分比。请注意,这不包括维护硬件和软件的时间中断。 %iowait: 显示系统具有未完成磁盘I / O请求的CPU或CPU空闲的时间百分比。 %irq: 显示CPU或CPU用于服务硬件中断的时间百分比。 %soft: 显示CPU或CPU用于服务软件中断的时间百分比。 %steal: 显示虚拟CPU或CPU在管理程序为另一个虚拟处理器提供服务时非自愿等待的时间百分比。 %guest: 显示CPU或CPU运行虚拟处理器所花费的时间百分比。 %gnice: 显示CPU或CPU运行niced客户机所花费的时间百分比。 %idle: 显示CPU或CPU空闲且系统没有未完成的磁盘I / O请求的时间百分比。
- -I SUM -P ALL|0:查看所有CPU或指定CPU中断统计
-I { keyword [,...] | ALL }
作用
输出中断统计信息
keyword 可以输入:CPU、SCPU、SUM、ALL
CPU:显示每秒中断数量,从 /proc/interrupts 读取数据
SCPU:显示每秒软中断数量,从 /proc/softirqs 读取数据
SUM:显示每个处理器的中断总数
ALL:输出上面三个关键字的所有内容
1)显示所有 CPU 平均中断次数
2)显示每个 CPU 的中断次数、所有 CPU 平均中断次数