您的位置:首页 > 运维架构 > Linux

linux性能分析工具sar,iostat,vmstat

2012-04-22 10:15 501 查看
linux性能分析工具sar,iostat,vmstat

yum install sysstat//安装sar

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

在命令行中,n 和t 两个参数组合起来定义采样间隔和次数,t为采样间隔,是必须有的参数,n为采样次数,是可选的,默认值是1,-o file表示将命令结果以二进制格式存放在文件中,file 在此处不是关键字,是文件名。options 为命令行选项,sar命令的选项很多,下面只列出常用选项:
-A:所有报告的总和。

-u:CPU利用率

-v:进程、I节点、文件和锁表状态。

-d:硬盘使用报告。

-r:没有使用的内存页面和硬盘块。

-g:串口I/O的情况。

-b:缓冲区使用情况。

-a:文件读写情况。

-c:系统调用情况。

-R:进程的活动情况。

-y:终端设备活动情况。

-w:系统交换活动。
sar -u //显示cpu信息,以百分比显示cpu的使用情况
07:40:01 PM CPU %user %nice %system %iowait %steal %idle

07:50:01 PM all 0.02 0.00 0.03 0.00 0.00 99.95

08:00:01 PM all 0.01 0.00 0.02 0.00 0.00 99.97

08:10:01 PM all 0.01 0.00 0.02 0.00 0.00 99.97

08:20:01 PM all 0.01 0.00 0.02 0.00 0.00 99.97

08:30:01 PM all 0.02 0.00 0.02 0.00 0.00 99.96

08:40:01 PM all 0.01 0.00 0.02 0.00 0.00 99.97

08:50:01 PM all 0.01 0.00 0.02 0.00 0.00 99.97

Average: all 0.01 0.00 0.02 0.00 0.00 99.96

字段 说明

CPU CPU编号

%user 在用户模式中运行进程所花的时间

%nice 运行正常进程所花的时间

%system 在内核模式(系统)中运行进程所花的时间

%iowait 没有进程在该CPU上执行时,处理器等待I/O完成的时间

%idle 没有进程在该CPU上执行的时间
sar -u 5 10 //以5秒间隔取10个样本

sar -u -o /tmp/cpu 5 2 //-o表示以二进制的方式存入文件/tmp/cpu

sar -u -f /tmp/cpu //查看二进制文件信息

sar -d 5 2 //输出磁盘I/O,5 2表示间隔和迭代
11:47:27 PM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util

11:47:32 PM dev8-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:47:32 PM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util

11:47:37 PM dev8-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util

Average: dev8-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
字段 说明

DEV 磁盘设备

tps 每秒传输数(或者每秒IO数)

rd_sec/s 每秒512字节读取数

wr_sec/s 每秒512字节写入数

sar -n DEV|EDEV|SOCK|FULL //DEV网络接口信息,EDEV显示网络错误的统计数据,SOCK显示套接字信息,FULL显示全部

sar -n DEV 5 2

11:58:53 PM IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s

11:58:58 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00

11:58:58 PM eth0 0.60 0.40 47.60 53.60 0.00 0.00 0.00

11:58:58 PM eth1 2.00 0.00 128.00 0.00 0.00 0.00 0.00
11:58:58 PM IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s

11:59:03 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00

11:59:03 PM eth0 0.40 0.80 25.60 174.40 0.00 0.00 0.00

11:59:03 PM eth1 2.00 0.00 128.00 0.00 0.00 0.00 0.00
Average: IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s

Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00

Average: eth0 0.50 0.60 36.60 114.00 0.00 0.00 0.00

Average: eth1 2.00 0.00 128.00 0.00 0.00 0.00 0.00

Average: eth2 0.00 0.00 0.00 0.00 0.00 0.00 0.00
字段 说明

IFACE LAN接口

rxpck/s 每秒钟接收的数据包

txpck/s 每秒钟发送的数据包

rxbyt/s 每秒钟接收的字节数

txbyt/s 每秒钟发送的字节数

rxcmp/s 每秒钟接收的压缩数据包

txcmp/s 每秒钟发送的压缩数据包

rxmcst/s 每秒钟接收的多播数据包

sar -n EDEV 5 1
12:01:21 AM IFACE rxerr/s txerr/s coll/s rxdrop/s txdrop/s txcarr/s rxfram/s rxfifo/s txfifo/s

12:01:26 AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

12:01:26 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

12:01:26 AM eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: IFACE rxerr/s txerr/s coll/s rxdrop/s txdrop/s txcarr/s rxfram/s rxfifo/s txfifo/s

Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

Average: eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

Average: eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
字段 说明

IFACE LAN接口

rxerr/s 每秒钟接收的坏数据包

txerr/s 每秒钟发送的坏数据包

coll/s 每秒冲突数

rxdrop/s 因为缓冲充满,每秒钟丢弃的已接收数据包数

txdrop/s 因为缓冲充满,每秒钟丢弃的已发送数据包数

txcarr/s 发送数据包时,每秒载波错误数

rxfram/s 每秒接收数据包的帧对齐错误数

rxfifo/s 接收的数据包每秒FIFO过速的错误数

txfifo/s 发送的数据包每秒FIFO过速的错误数

sar -n SOCK 5 1

12:07:58 AM totsck tcpsck udpsck rawsck ip-frag

12:08:03 AM 443 261 0 0 0

Average: 443 261 0 0 0
字段 说明

totsck 使用的套接字总数量

tcpsck 使用的TCP套接字数量

udpsck 使用的UDP套接字数量

rawsck 使用的raw套接字数量

ip-frag 使用的IP段数量

##########################################################################################
iostat //磁盘吞吐量工具

avg-cpu: %user %nice %system %iowait %steal %idle

0.09 0.01 0.04 0.00 0.00 99.86

Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn

sda 2.02 3.55 71.45 1239286 24952108
tps:平均每秒钟的传送次数,与数据传输“次数”相关,非容量

kB_read/s:启动到现在的平均读取单位

kB_wrtn/s:启动到现在的平均写入单位

kB_read:启动到现在总共读出来的文件 单位

kB_wrtn:启动到现在总共写入的文件单位
iostat -d 2 3 //表示每2秒检查磁盘1次,一共检查3次

iostat 参数

-c 只显示CPU行

-d 显示磁盘行

-k 以千字节为单位显示磁盘输出

-t 在输出中包括时间戳

-x 在输出中包括扩展的磁盘指标
#############################################################################################
vmstat -n 3//显示性能指标:进程、内存、交换区、I/O、系统和CPU,每3秒刷新一次

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------

r b swpd free buff cache si so bi bo in cs us sy id wa st

0 0 0 6923688 333404 4110564 0 0 0 4 2 14 0 0 100 0 0
procs:r是可运行进程的数量,b是阻塞进程的数量。

memory:swpd是已用的交换空间数量,单位KB/秒,free自由RAM数量,buff是缓冲使用的RAM数量,cache是文件系统缓存使用的RAM数量

swap: si是从磁盘分页到内存数量,so是从内存分页到磁盘的数量

io:bi是从磁盘读入的块,bo,写入磁盘的块

ststem:in是系统中断,cs是进程上下文开关

cpu:us是用户模式,sy是内核模式,id是空闲,wa是等待I/O,
-m 选项使内存字段以兆字节为单位显示
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: