sar 系统活动情况报告

sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,

包括:文件的读写情况、系统调用的使用情况、磁盘I/OCPU效率、内存使用状况、进程活动及IPC有关的活动等

IPC(Inter-Process Communication)进程间通信,提供了各种进程间通信的方法。在Linux C编程中有几种方法 (1) 半双工Unix管道
  (2) FIFOs(命名管道)
  (3) 消息队列
  (4) 信号量
  (5) 共享内存
  (6) 网络Socket

sar [options] [-A] [-o file] t [n]

t为采样间隔,n为采样次数,默认值是1;

-o file表示将命令结果以二进制格式存放在文件中,file 是文件名。

常用选项如下:
-A:所有报告的总和
-r:输出内存和交换空间的统计信息
-u:输出CPU使用情况的统计信息
-c:输出进程统计信息,每秒创建的进程数
-R:输出内存页面的统计信息
-v:输出inode、文件和其他内核表的统计信息

-d:输出每一个块设备的活动信息
-b:显示I/O和传送速率的统计信息
-a:文件读写情况
-y:终端设备活动情况
-w:输出系统交换活动信息

注意:-o 文件名,可以将显示的数据放在文件里

可以使用sar -f 文件名  查看

CPU

[root@VM_0_10_centos ~]# sar -u 5 3
Linux 2.6.32-696.el6.x86_64 (VM_0_10_centos)     05/15/2020     _x86_64_    (1 CPU)

10:38:38 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle
10:38:43 PM     all      0.60      0.00      0.40      0.00      0.00     99.00
10:38:48 PM     all      0.60      0.00      0.20      0.00      0.00     99.20
10:38:53 PM     all      0.60      0.00      0.40      0.20      0.00     98.80
Average:        all      0.60      0.00      0.33      0.07      0.00     99.00
每个5秒测一测
all 表示统计信息为所有 CPU 的平均值。(多个cpu的情况下)
%user:显示在用户级别(application)运行使用 CPU 总时间的百分比。
%nice:显示在用户级别,用于nice操作,所占用 CPU 总时间的百分比。
%system:在核心级别(kernel)运行所使用 CPU 总时间的百分比。
%iowait:显示用于等待I/O操作占用 CPU 总时间的百分比。
%steal:管理程序(hypervisor)为另一个虚拟进程提供服务而等待虚拟 CPU 的百分比。
%idle:显示 CPU 空闲时间占用 CPU 总时间的百分比。


注意性能:
%iowait 的值过高,表示硬盘存在I/O瓶颈
%idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量
%idle 的值持续低于1,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU 。

内存

[root@VM_0_10_centos ~]# sar -r 5 3
Linux 2.6.32-696.el6.x86_64 (VM_0_10_centos)     05/15/2020     _x86_64_    (1 CPU)

10:46:17 PM kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit
10:46:22 PM     87556   1834692     95.45     72188    325300   1941736    101.01
10:46:27 PM     90116   1832132     95.31     72196    325296   1934324    100.63
10:46:32 PM     90100   1832148     95.31     72196    325300   1934328    100.63
Average:        89257   1832991     95.36     72193    325299   1936796    100.76
kbmemfree:它不包括buffer和cache的空间.和free命令的free一样
kbmemused:它包括buffer和cache的空间.
%memused:kbmemused/内存总量(不包括swap)
kbbuffers和kbcached:是free命令中的buffer和cache.
kbcommit:保证当前系统所需要的内存,即为了确保不溢出而需要的内存(RAM+swap).
%commit:这个值是kbcommit与内存总量(包括swap)的一个百分比.

I/O

[root@VM_0_10_centos ~]# sar -b 5 3
Linux 2.6.32-696.el6.x86_64 (VM_0_10_centos)     05/15/2020     _x86_64_    (1 CPU)

10:50:12 PM       tps      rtps      wtps   bread/s   bwrtn/s
10:50:17 PM      2.21      0.00      2.21      0.00     41.77
10:50:22 PM      1.80      0.00      1.80      0.00     35.20
10:50:27 PM      4.62      0.00      4.62      0.00     54.62
Average:         2.87      0.00      2.87      0.00     43.85
tps:每秒钟物理设备的 I/O 传输总量
rtps:每秒钟从物理设备读入的数据总量
wtps:每秒钟向物理设备写入的数据总量
bread/s:每秒钟从物理设备读入的数据量,单位为 块/s
bwrtn/s:每秒钟向物理设备写入的数据量,单位为 块/s

inode ,file,其他内核

 

[root@VM_0_10_centos ~]# sar -v 5 3
Linux 2.6.32-696.el6.x86_64 (VM_0_10_centos)     05/15/2020     _x86_64_    (1 CPU)

10:52:17 PM dentunusd   file-nr  inode-nr    pty-nr
10:52:22 PM      6552       928      9491         1
10:52:27 PM      6524       832      9445         1
10:52:32 PM      6524       832      9445         1
Average:         6533       864      9460         1

 

dentunusd:目录高速缓存中未被使用的条目数量
file-nr:文件句柄(file handle)的使用数量
inode-nr:索引节点句柄(inode handle)的使用数量
pty-nr:使用的pty数量,这就是虚拟终端pty(pseudo-tty)

 

进程队列长度和平均负载

[root@VM_0_10_centos ~]# sar -q 5 3
Linux 2.6.32-696.el6.x86_64 (VM_0_10_centos)     05/16/2020     _x86_64_    (1 CPU)

10:38:39 AM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15
10:38:44 AM         0       154      0.00      0.00      0.00
10:38:49 AM         0       151      0.00      0.00      0.00
10:38:54 AM         0       152      0.00      0.00      0.00
Average:            0       152      0.00      0.00      0.00

 

runq-sz:运行队列的长度(等待运行的进程数)
plist-sz:进程列表中进程(processes)和线程(threads)的数量
ldavg-1:最后1分钟的系统平均负载(System load average)
ldavg-5:过去5分钟的系统平均负载
ldavg-15:过去15分钟的系统平均负载

 

上一篇:linux sar命令详解


下一篇:sar 找出系统瓶颈的利器