性能测试必备的 Linux 命令系列,可以看下面链接的文章哦

​https://blog.51cto.com/u_12020737/2854201​​​

 

介绍

报告 CPU 信息和 I/O 读写信息

 

iostat 主要能看什么性能指标

  • 系统 CPU 使用率
  • 设备的磁盘使用情况

 

语法格式



iostat [ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -s ] [ -t ] [ -V ] [ -x ] [ -y ] [ -z ]  [-j  { ID | LABEL | PATH | UUID | ... } ] [ -o JSON ] [ [ -H ] -g group_name ] [ --human ] [-p [ device [,...] | ALL ] ] [ device [...] | ALL ] [ interval [ count ] ]


  • interval:间隔多久统计一次数据,可选
  • count:统计一次,可选
  • 注意:若只传了 interval,则统计次数是无限次,结束统计后会打印本次所有数据的平均值

 

小栗子



iostat 1


每隔 1s 统计打印一次数据,统计无限次

 



iostat 2 5


每隔 2s 统计打印一次数据,共统计 5 次

 

默认输出显示的字段说明

最基础的命令



iostat 1 2


stat 命令家族(4)- 详解 iostat_linux命令

分为两个部分:系统 CPU 信息,设备的 I/O 读写信息

 

系统 CPU 信息字段说明

stat 命令家族(4)- 详解 iostat_stat_02

 

设备的 I/O 读写信息字段说明

stat 命令家族(4)- 详解 iostat_stat命令_03

 

命令行参数

stat 命令家族(4)- 详解 iostat_stat_04

 

具体的栗子

定时显示所有信息



iostat 2  3


 

只显示系统 CPU 信息,并伴随着时间戳



iostat -t -c


stat 命令家族(4)- 详解 iostat_linux命令_05

 

只显示指定磁盘的统计信息



iostat -d sda


stat 命令家族(4)- 详解 iostat_stat_06

 

显示指定磁盘和他所有分区的信息,并友好显示



iostat -p sda -h


stat 命令家族(4)- 详解 iostat_stat_07

 

整合所有设备的磁盘信息



iostat -g all_device


stat 命令家族(4)- 详解 iostat_stat_08

每项都是前面所有设备数据的总和

 

整合所有设备的磁盘信息,并只显示总的数据



iostat -g all_device -H


stat 命令家族(4)- 详解 iostat_linux命令_09

 

忽略没有活动的设备的统计信息



iostat -z 1 2


stat 命令家族(4)- 详解 iostat_stat_10

可以发现,第一次输出的时候没有活动的设备还是会打印出来,怎么解决?

 

忽略没有活动的设备的统计信息和第一次统计的信息



iostat -z -y 1 2


stat 命令家族(4)- 详解 iostat_stat命令_11

完美解决上面的问题啦

 

显示更详细的统计信息



iostat -x -d 1 2 -y -z


stat 命令家族(4)- 详解 iostat_linux命令_12

 

字段说明

stat 命令家族(4)- 详解 iostat_stat_13

 

重点

如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈