3.2.2 CPU统计数据
sar-u输出显示CPU信息。-u选项是sar的默认选项。该输出以百分比显示CPU的使用情况。表3-2解释该输出。
表3-2sar -u字段
字 段 | 说 明 |
CPU | CPU编号 |
%user | 在用户模式中运行进程所花的时间 |
%nice | 运行正常进程所花的时间 |
%system | 在内核模式(系统)中运行进程所花的时间 |
%iowait | 没有进程在该CPU上执行时,处理器等待I/O完成的时间 |
%idle | 没有进程在该CPU上执行的时间 |
这些看起来应该比较熟悉,它和top报告中的CPU信息内容相同。以下显示输出格式:
其中的510导致sar以5秒钟间隔取得10个样本。任何sar报告的第一列都是时间戳。
我们本来可以研究使用-f选项通过sadc创建的文件。这个sar语法显示sar -f/var/log/ sa/sa21的输出:
在多CPULinux系统中,sar命令也可以为每个CPU分解该信息,如以下sar -u -P ALL 5 5输出所示:
3.2.3 磁盘I/O统计数据
sar是一个研究磁盘I/O的优秀工具。以下是sar磁盘I/O输出的一个示例。
第一行-d显示磁盘I/O信息,52选项是间隔和迭代,就像sar数据收集器那样。表3-3列出了字段和说明。
表3-3sar -d字段
字段 | 说明 |
DEV | 磁盘设备 |
tps | 每秒传输数(或者每秒IO数) |
rd_sec/s | 每秒512字节读取数 |
wr_sec/s | 每秒512字节写入数 |
512只是一个测量单位,不表示所有磁盘I/O均使用512字节块。DEV列是dev#-#格式的磁盘设备,其中第一个#是设备主编号,第二个#是次编号或者连续编号。对于大于2.5的内核,sar使用次编号。例如,在sar-d输出中看到的dev3-0和dev3-1。它们对应于/dev/hda和/dev/hdal。请看/dev中的以下各项:
/dev/hda有主编号3和次编号0。hda1有主编号3和次编号1。
3.2.4 网络统计数据
sar提供四种不同的语法选项来显示网络信息。-n选项使用四个不同的开关:DEV、EDEV、SOCK和FULL。DEV显示网络接口信息,EDEV显示关于网络错误的统计数据,SOCK显示套接字信息,FULL显示所有三个开关。它们可以单独或者一起使用。表3-4显示通过-nDEV选项报告的字段。
表3-4sar -n DEV字段
字 段 | 说 明 |
IFACE | LAN接口 |
rxpck/s | 每秒钟接收的数据包 |
txpck/s | 每秒钟发送的数据包 |
rxbyt/s | 每秒钟接收的字节数 |
txbyt/s | 每秒钟发送的字节数 |
rxcmp/s | 每秒钟接收的压缩数据包 |
txcmp/s | 每秒钟发送的压缩数据包 |
rxmcst/s | 每秒钟接收的多播数据包 |
以下是使用-nDEV选项的sar输出:
关于网络错误的信息可以用sar -nEDEV显示。表3-5列出了显示的字段。
表3-5sar -n EDEV字段
字段 | 说明 |
IFACE | LAN接口 |
rxerr/s | 每秒钟接收的坏数据包 |
txerr/s | 每秒钟发送的坏数据包 |
coll/s | 每秒冲突数 |
rxdrop/s | 因为缓冲充满,每秒钟丢弃的已接收数据包数 |
txdrop/s | 因为缓冲充满,每秒钟丢弃的已发送数据包数 |
txcarr/s | 发送数据包时,每秒载波错误数 |
rxfram/s | 每秒接收数据包的帧对齐错误数 |
rxfifo/s | 接收的数据包每秒FIFO过速的错误数 |
txfifo/s | 发送的数据包每秒FIFO过速的错误数 |
SOCK参数显示IPCS套接字信息。表3-6列出显示的字段及其意义。
表3-6sar -n SOCK字段
字段 | 说明 |
totsck | 使用的套接字总数量 |
tcpsck | 使用的TCP套接字数量 |
udpsck | 使用的UDP套接字数量 |
rawsck | 使用的raw套接字数量 |
ip-frag | 使用的IP段数量 |
sar可以产生许多其他报告。我们有必要仔细阅读sar(1)手册页,查看是否有自己需要的其他报告。