一、概述
sar是系统性能测试工具,它可以用来监控系统负载、CPU使用率、内存使用情况、磁盘I/O等指标,同时也支持实时监控、历史数据查询和图表展示等功能。sar指令是其命令行工具,常用于调试系统性能问题。
二、指令参数
sar指令支持多个参数,常用的参数有:
- -u:查看CPU使用情况
- -r:查看内存使用情况
- -b:查看磁盘I/O情况
- -n:查看网络情况
- -p:查看进程情况
- -q:查看负载情况
$ sar -u
sar命令默认输出所有统计周期的平均值,可以使用"-s"参数指定开始时间,"-e"参数指定结束时间。
$ sar -u -s 09:00:00 -e 10:00:00
三、CPU使用情况
使用"-u"参数查看CPU使用情况,sar命令默认展示的内容有:
- %user:用户态进程使用CPU时间占比
- %nice:NICE值为负的进程使用CPU时间占比
- %system:内核态进程使用CPU时间占比
- %iowait:CPU等待I/O操作的时间占比
- %steal:Hypervisor偷走虚拟机CPU时间的占比
- %idle:空闲时间占比
四、内存使用情况
使用"-r"参数查看内存使用情况,sar命令默认展示的内容有:
- kbmemfree:空闲内存
- kbmemused:当前已用内存
- %memused:内存使用率
五、磁盘I/O情况
使用"-b"参数查看磁盘I/O情况,sar命令默认展示的内容有:
- tps:每秒钟磁盘I/O次数
- rtps:每秒钟磁盘读取次数
- wtps:每秒钟磁盘写入次数
- bread/s:每秒钟读取的块数
- bwrtn/s:每秒钟写入的块数
- bwrtn:写入的总块数
- bread:读取的总块数
六、网络情况
使用"-n"参数查看网络情况,sar命令默认展示的内容有:
- IFACE:网络接口名称
- rxpck/s:每秒钟接收的数据包数
- txpck/s:每秒钟发送的数据包数
- rxbytes/s:每秒钟接收的字节数
- txbytes/s:每秒钟发送的字节数
- rxerrs/s:每秒钟接收错误数
- txerr/s:每秒钟发送错误数
- coll/s:每秒钟冲突检测数
七、进程情况
使用"-p"参数查看进程情况,sar命令默认展示的内容有:
- PID:进程ID
- %usr:用户态CPU时间占比
- %system:内核态CPU时间占比
- %guest:GuestOS使用CPU时间占比
- %CPU:CPU使用率
- %MEM:内存使用率
- COMMAND:进程命令行
八、负载情况
使用"-q"参数查看负载情况,sar命令默认展示的内容有:
- runq-sz:运行队列长度
- plist-sz:进程列表长度
- ldavg-1:过去1分钟负载平均值
- ldavg-5:过去5分钟负载平均值
- ldavg-15:过去15分钟负载平均值
九、输出数据格式
使用"-o"参数可以指定输出的数据格式,支持多种格式,如:
$ sar -u -P ALL -I SUM -o sar_cpu.txt $ sar -r -B -n DEV -o sar_mem_io_net.txt以上是对sar指令的详细介绍,该指令可以帮助我们深入了解系统的运行情况,解决性能问题,提升系统的安全和稳定性。