Linux sysstat 安装使用(2)

3.Sysstat 工具集介绍;

3.1 sadc 工具,
sadc 位于 /usr/lib/sa目录中,如果你没有设置可执行路径,要用绝对路径来运行比较方便,/usr/lib/sa/sadc;sadc 是把数据写在一个二进制的文件中,如果想查看数据内容,需要用sadf工具来显示;


sadc 的用法;

/usr/lib/sa/sadc [ -d ] [ -F ] [ -I ] [ -L ] [ -V ] [ interval [ count ] ] [ outfile ]

参数说明:
-d  报告硬盘设置的相关统计;
-F  强制把数据写入文件;
-I  报告所有系统中断数据;

interval 表示时间间隔,单位是秒,比如3 ;
count 统计数据的次数,也是一个数字;
outfile 输出统计到outfile文件;

注意:此工具中的参数都是可选的,如果没有指定任何参数,比如 /usr/lib/sa/sadc - ,则会输出数据到 /var/log/sa/ 目录下的一个文件中。我们要通过sadf 或sar工具来查看;
[root@localhost beinan]# /usr/lib/sa/sadc  -
[root@localhost beinan]# ls /var/log/sa  注:列出所有sa目录下的文件,根据文件的时间来判断哪个文件是最新的;
[root@localhost beinan]# sar  -f  /var/log/sa/sa12

[root@localhost beinan]# sadf  /var/log/sa/sa12

举例:我们想把sadc收集到的数据写到一个指定的文件中;

[root@localhost ~]# /usr/lib/sa/sadc  1 10 sa000
[root@localhost ~]# sar -f sa000

Linux 2.6.15-1.2054_FC5 (localhost.localdomain)        2006年05月12日

09时15分30秒      CPU    %user    %nice  %system  %iowait    %idle
09时15分31秒      all      3.00      0.00      0.00      1.00    96.00
09时15分32秒      all      0.00      0.00      0.00      0.00    100.00
09时15分33秒      all      0.00      0.00      0.00      0.00    100.00
09时15分34秒      all      0.00      0.00      0.00      0.00    100.00
09时15分35秒      all      0.00      0.00      0.00      0.00    100.00
09时15分36秒      all      0.00      0.00      0.00      0.00    100.00
09时15分37秒      all      0.00      0.00      0.00      0.00    100.00
09时15分38秒      all      0.00      0.00      0.00      0.00    100.00
09时15分39秒      all      0.00      0.00      0.00      0.00    100.00
Average:          all      0.33      0.00      0.00      0.11    99.56

注解:我们用sadc 收集系统动态数据,让它收集1秒之内的10次动态信息; 然后通过sar 工具来查看系统的状态。也可以用 sadf 来查看所收集的数据,但不是太直观。您自己尝试一下看看。查看sa000文件,用 sadf sa000 ;


3.2 sar 工具;
sar 工具比较强大,既能收集系统CPU、硬盘、动态数据,也能显示动态显示,更能查看二进制数据文件;sar 的应用比较多,而且也比较复杂,数据更为精确。我们只了解一下常用的内容就行,大多数内容我们了解就行;

用法:
sar  [参数选项]

参数说明:
-A  显示所有历史数据,通过读取/var/log/sar 目录下的所有文件,并把它们分门别类的显示出来;
-b  通过设备的I/O中断读取设置的吞吐率;
-B 报告内存或虚拟内存交换统计;
-c 报告每秒创建的进程数;
-d 报告物理块设备(存储设备)的写入、读取之类的信息,如果直观一点,可以和p参数共同使用,-dp
-f 从一个二进制的数据文件中读取内容,比如 sar -f filename
-i interval  指定数据收集的时间,时间单位是秒;
-n 分析网络设备状态的统计,后面可以接的参数有 DEV、EDEV、NFS、NFSD、SOCK等。比如-n DEV
-o 把统计信息写入一个文件,比如  -o filename ;
-P 报告每个处理器应用统计,用于多处理器机器,并且启用SMP内核才有效;
-p 显示友好设备名字,以方便查看,也可以和-d 和-n 参数结合使用,比如 -dp 或-np
-r 内存和交换区占用统计;
-R
-t 这个选项对从文件读取数据有用,如果没有这个参数,会以本地时间为标准 读出;
-u 报告CPU利用率的参数;
-v 报告inode, 文件或其它内核表的资源占用信息;
-w 报告系统交换活动的信息; 每少交换数据的个数;
-W 报告系统交换活动吞吐信息;
-x 用于监视进程的,在其后要指定进程的PID值;
-X 用于监视进程的,但指定的应该是一个子进程ID;

sar 应用举例;

实例一: 如果只用sar 命令,sar就是读取 /var/log/sa目录下最近系统状态文件。
[root@localhost ~]# sar

[root@localhost ~]# sar -A  注:读取/var/log/sa目录下所有文件数据;

如果我们想知道CPU的利用率;动态更新;下面的例子是每秒更新一次数据,总共更新五次;

[root@localhost ~]# sar -u  1 5
Linux 2.6.15-1.2054_FC5 (localhost.localdomain)        2006年05月12日

时间              CPU    利用率    nice值    系统占用    IO占用  空闲
11时19分34秒      CPU    %user    %nice  %system  %iowait    %idle
11时19分35秒      all      2.97      0.00      0.00      0.00    97.03
11时19分36秒      all    11.11      0.00      9.09      0.00    79.80
11时19分37秒      all    21.78      0.00      6.93      0.00    71.29
11时19分38秒      all    15.00      0.00      0.00      0.00    85.00
11时19分39秒      all      8.00      0.00      0.00      0.00    92.00
Average:          all    11.78      0.00      3.19      0.00    85.03
注解:

CPU:表示机器内所有的CPU;
%user 表示CPU的利用率;
%nice 表示CPU在用户层优先级的百分比,0表示正常;
%system 表示当系统运行时,在用户应用层上所占用的CPU百分比;
%iowait 表示请求硬盘I/0数据流出时,所占用CPU的百分比;
%idle 表示空闲CPU百分比,值越大系统负载越低;

您可以CPU利用率的动态信息输出到一个文本文件中,然后通过more 来查看。


[root@localhost ~]# sar -u  1 5 > sar000.txt
[root@localhost ~]# more sar000.txt

也可以输出到一个二进制的文件中,然后通过sar来查看;


[root@localhost ~]# sar -u  1 5 -o sar002
[root@localhost ~]# sar -f sar002

注:如果您把数据通过-o filename 输出到一个二进制的文件中,是不能用文件内容查看工具more 、less或cat来查看的,应该用sar工具来查看,要加-f参数;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/19264.html