Linux中的top,free等命令不能完全满足我们性能数据收集的要求,我们需要一个更加强大的工具来收集性能数据。经过考察和对比,发现Sysstat是一个非常强大的工具,因此下载了试了下,效果不错。Sysstat是一个工具集,包括sarpidstatiostatmpstatsadfsadc。其中sar是其中最强大,也是最能符合我们测试要求的工具,同时pidstat也是非常有用的东东,因此本文结合性能测试重点介绍这两个工具。

Sysstat的安装

从http://pagesperso-orange.fr/sebastien.godard/download.html下载最新版本,解压,安装

  •  wget http://pagesperso-orange.fr/sebastien.godard/sysstat-8.1.2.tar.gz
     tar zxvf sysstat
    -8.1.2.tar.gz
     cd sysstat
    -8.1.2
     .
    /configure
     make
     su
     <enter root password
    >
     make install
    
        

监视某个进程

  1. 通过ps命令找到相应进程的PID:

    Linux服务器性能数据收集 - Sysstat介绍ps -e
  2. 使用pidstat命令监视进程,详细用法见:http://pagesperso-orange.fr/sebastien.godard/man_pidstat.html

    pidstat 2 5 
    //每隔2秒,显示5次,所有活动进程的CPU使用情况
    pidstat -3132 2 5 
    //每隔2秒,显示5次,PID为1643的进程的CPU使用情况显示
    pidstat -3132 2 5 -r
    //每隔2秒,显示5次,PID为1643的进程的内存使用情况显示
    
        
  3. 很可惜的是,pidstat命令没有保存性能数据的功能。

查看性能数据

在sysstat工具包中,sar是最强大的了,通过sar几乎可以监视所有的性能数据,同时,sar还支持将性能数据保存起来。
sar详细用法请见:http://pagesperso-orange.fr/sebastien.godard/man_sar.html

  1. 查看CPU使用情况

    Linux服务器性能数据收集 - Sysstat介绍sar 2 5
    Linux服务器性能数据收集 - Sysstat介绍
    //每隔2秒,显示5次,CPU使用的情况
    
        
  2. 查看内存使用情况

    Linux服务器性能数据收集 - Sysstat介绍sar -2 5
    Linux服务器性能数据收集 - Sysstat介绍
    //每隔2秒,显示5次,内存使用的情况
    
        
  3. 查看网络吞吐量

    Linux服务器性能数据收集 - Sysstat介绍sar -n DEV 2 5
    Linux服务器性能数据收集 - Sysstat介绍
    //每隔2秒,显示5次,网络吞吐量情况

保存性能数据

sar支持保存成两种格式的文件,一种是文本文件,一种是二进制文件(只有通过sar自己的命令才能查看)。

  1. 保存为文本文件

    结合上面的查看命令,加入 > filename 参数即可保存文本文件,下面列出几个有用的命令:

    Linux服务器性能数据收集 - Sysstat介绍sar 1 10 > data.txt
    Linux服务器性能数据收集 - Sysstat介绍
    //每隔1秒,写入10次,把CPU使用数据保存到data.txt文件中。
    Linux服务器性能数据收集 - Sysstat介绍
    sar 1 0 -15:00:00 > data.txt
    Linux服务器性能数据收集 - Sysstat介绍
    //每隔1秒记录CPU的使用情况,直到15点,数据将保存到data.txt文件中。(-e 参数表示结束时间,注意时间格式:必须为hh:mm:ss格式)
    Linux服务器性能数据收集 - Sysstat介绍
    sar 1 0 --15:00:00 > data.txt
    Linux服务器性能数据收集 - Sysstat介绍
    //每隔1秒记录内存使用情况,直到15点,数据将保存到data.txt文件中。
    Linux服务器性能数据收集 - Sysstat介绍
    sar 1 0 -n DEV -15:00:00 > data.txt
    Linux服务器性能数据收集 - Sysstat介绍
    //每隔1秒记录网络使用情况,直到15点,数据将保存到data.txt文件中。
    
        用WinSCP工具从Linux服务器上取下data.txt文件,内容如下:

    Linux服务器性能数据收集 - Sysstat介绍Linux 2.6.18-53.el5 (Performancesvr5)  2008年05月05日     _x86_64_
    Linux服务器性能数据收集 - Sysstat介绍
    Linux服务器性能数据收集 - Sysstat介绍 11时04分05秒     CPU     
    %user     %nice   %system   %iowait    %steal     %idle
    Linux服务器性能数据收集 - Sysstat介绍 11时04分06秒     all      
    0.25      0.00      0.00      0.00      0.00     99.75
    Linux服务器性能数据收集 - Sysstat介绍 11时04分07秒     all      
    0.00      0.00      0.25      0.00      0.00     99.75
    Linux服务器性能数据收集 - Sysstat介绍 11时04分08秒     all      
    0.25      0.00      0.25      1.50      0.00     98.00
    Linux服务器性能数据收集 - Sysstat介绍 11时04分09秒     all      
    0.25      0.00      0.00      0.50      0.00     99.25
    Linux服务器性能数据收集 - Sysstat介绍 11时04分10秒     all      
    0.00      0.00      0.00      0.00      0.00    100.00
    Linux服务器性能数据收集 - Sysstat介绍 11时04分11秒     all      
    0.25      0.00      0.25      0.00      0.00     99.50
    Linux服务器性能数据收集 - Sysstat介绍 11时04分12秒     all      
    0.00      0.00      0.25      0.00      0.00     99.75
    Linux服务器性能数据收集 - Sysstat介绍 11时04分13秒     all      
    0.50      0.00      0.50      0.99      0.00     98.01
    Linux服务器性能数据收集 - Sysstat介绍 11时04分14秒     all      
    0.00      0.00      0.00      1.25      0.00     98.75
    Linux服务器性能数据收集 - Sysstat介绍 11时04分15秒     all      
    0.50      0.00      0.00      0.00      0.00     99.50
    Linux服务器性能数据收集 - Sysstat介绍 平均时间:     all      
    0.20      0.00      0.15      0.42      0.00     99.23
    
        有了这份数据,就可以轻松的使用WPS表格来统计CPU的使用情况了。
        

    Linux服务器性能数据收集 - Sysstat介绍

  2. 保存为二进制文件

    由于保存的二进制文件只有sar通过-f参数才能打开,不利于我们分析和统计数据,因此不推荐使用这个方法。保存二进制文件的参数是-o,如:

    Linux服务器性能数据收集 - Sysstat介绍sar 1 5 --o data
    Linux服务器性能数据收集 - Sysstat介绍
    //每隔1秒,写入5次,将内存使用的数据写入二进制文件data中。
    Linux服务器性能数据收集 - Sysstat介绍
    sar -f data
    Linux服务器性能数据收集 - Sysstat介绍
    //查看data文件
        官方资料:http://pagesperso-orange.fr/sebastien.godard/documentation.html

相关文章: