Linux服务器性能数据收集【sar、pidstat、iostat、mpstat、sadf、sadc】

Linux服务器性能数据收集【sar、pidstat、iostat、mpstat、sadf、sadc】

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

从http://pagesperso-orange.fr/sebastien.godard/download.html下载最新版本,解压, 安装
wget http://pagesperso-orange.fr/sebastien.godard/sysstat-9.1.7.tar.gz
tar zxvf sysstat - 8.1 . 2 .tar.gz
cd sysstat - 8.1 . 2
. / configure
make
su
<enter root password >
make install


监视某个进程
通过ps命令找到相应进程的PID:

ps - e

使用pidstat命令监视进程,详细用法见:http://pagesperso-orange.fr/sebastien.godard/man_pidstat.html
pidstat 2 5
// 每隔2秒,显示5次,所有活动进程的CPU 使用情况
pidstat - p 3132 2 5
// 每隔2秒,显示5次,PID为1643的进程的CPU使用情况显示
pidstat - p 3132 2 5 - r
// 每隔2秒,显示5次,PID为1643的进程的内存使用情况显示


很可惜的是,pidstat命令没有保存性能数据的功能。
查看性能数据

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

sar 2 5
// 每隔2秒,显示5次,CPU使用的情况


查看内存使用情况

sar - r 2 5
// 每隔2秒,显示5次,内存使用的情况


查看网络吞吐量

sar - n DEV 2 5
// 每隔2秒,显示5次,网络吞吐量情况
保存性能数据

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

保存为文本文件

结合上面的查看命令,加入 > filename 参数即可保存文本文件,下面列出几个有用的命令:
sar 1 10 > data.txt
// 每隔1秒,写入10次,把CPU使用数据保存到data.txt文件中。
sar 1 0 - e 15 : 00 : 00 > data.txt
// 每隔1秒记录CPU的使用情况,直到15点,数据将保存到data.txt文件中。
(-e 参数表示结束时间,注意时间格式: 必须为 hh:mm:ss格式)
sar 1 0 - r - e 15 : 00 : 00 > data.txt
// 每隔1秒记录内存使用情况,直到15点,数据将保存到data.txt文件中。
sar 1 0 - n DEV - e 15 : 00 : 00 > data.txt
// 每隔1秒记录网络使用情况,直到15点,数据将保存到data.txt文件中。


用WinSCP工具从Linux服务器上取下data.txt文件,内容如下:

Linux 2.6 . 18 - 53 .el5 (Performancesvr5) 2008年05月05 日 _x86_64_

11时04分05秒 CPU % user % nice % system % iowait % steal % idle
11时04分06秒 all 0.25 0.00 0.00 0.00 0.00 99.75
11 时04分07秒 all 0.00 0.00 0.25 0.00 0.00 99.75
11 时04分08秒 all 0.25 0.00 0.25 1.50 0.00 98.00
11 时04分09秒 all 0.25 0.00 0.00 0.50 0.00 99.25
11 时04分10秒 all 0.00 0.00 0.00 0.00 0.00 100.00
11 时04分11秒 all 0.25 0.00 0.25 0.00 0.00 99.50
11 时04分12秒 all 0.00 0.00 0.25 0.00 0.00 99.75
11 时04分13秒 all 0.50 0.00 0.50 0.99 0.00 98.01
11 时04分14秒 all 0.00 0.00 0.00 1.25 0.00 98.75
11 时04分15秒 all 0.50 0.00 0.00 0.00 0.00 99.50
平 均时间: all 0.20 0.00 0.15 0.42 0.00 99.23


有了这份数据,就可以轻松的使用WPS表格来统计CPU的使用情况了。



保存为二进制文件

由于保存的二进制文件只有sar通过-f参数才能打开,不利于我们分 析和统计数据,因此不推荐使用这个方法。
保存二进制文件的参数是-o,如:
sar 1 5 - r - o data
// 每隔1秒,写入5次,将内存使用的数据写入二进制文件data中。
sar - f data
// 查看data文件

你可能感兴趣的:(iostat)