sar主要用于收集并统计系统资源的信息,包括CPU、IO、内存、网卡流量等。

sar语法

用法:sar [ 选项 ] [ <时间间隔> [ <次数> ] ]

常用选项说明:

-u 输出整体CPU的使用情况,默认值。
-d 显示各个磁盘的统计信息
-p 以sdX的形式显示设备名称,不带该参数,设备显示是dev2-8、dev2-9等,不易识别。
-b 显示磁盘I/O的使用情况:
-r 显示内存统计信息
-P ALL 显示每个内核统计信息:
-n 显示网络使用情况,-n后接关键词”DEV”可显示eth0、eth1等网卡的信息:
-o sar输出信息保存到指定的文件

说明:更多选项说明可使用man sar查看

常用实例

1、cpu整体使用情况统计(sar 2 3 /sar -u 2 3)

$ sar
Linux 3.10.-514.26..el7.x86_64 (VM_17_110_centos) 2017年10月22日 _x86_64_ ( CPU) 10时43分18秒 CPU %user %nice %system %iowait %steal %idle
10时43分20秒 all 0.63 0.00 0.38 0.00 0.00 99.00
10时43分22秒 all 0.88 0.00 0.63 0.88 0.00 97.62
10时43分24秒 all 0.75 0.00 0.25 0.00 0.00 99.00
平均时间: all 0.75 0.00 0.42 0.29 0.00 98.54

输出说明:

%user: 用户态下CPU使用时间比率
%system: 内核态下CPU使用时间比率
%iowait: CPU等待I/O占用时间比率
%idle: CPU空闲时间比率

2、各磁盘IO使用情况统计(sar -d -p 1 2)。

$ sar -d -p
Linux 3.10.-514.26..el7.x86_64 (VM_17_110_centos) 2017年10月22日 _x86_64_ ( CPU) 10时45分52秒 DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
10时45分53秒 vda 2.00 0.00 24.00 12.00 0.03 13.00 6.50 1.30
10时45分53秒 vdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
10时45分53秒 vdc 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10时45分53秒 DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
10时45分54秒 vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
10时45分54秒 vdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
10时45分54秒 vdc 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 平均时间: DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
平均时间: vda 1.00 0.00 12.00 12.00 0.01 13.00 6.50 0.65
平均时间: vdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
平均时间: vdc 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

输出说明:

tps:每秒从物理磁盘I/O的次数.多个逻辑请求会被合并为一个I/O磁盘请求,一次传输的大小是不确定的.
rd_sec/s:每秒读扇区的次数.
wr_sec/s:每秒写扇区的次数.
avgrq-sz:平均每次设备I/O操作的数据大小(扇区).
avgqu-sz:磁盘请求队列的平均长度.
await:从请求磁盘操作到系统完成处理,每次请求的平均消耗时间,包括请求队列等待时间,单位是毫秒(1秒=1000毫秒).
svctm:系统处理每次请求的平均时间,不包括在请求队列中消耗的时间.
%util:I/O请求占CPU的百分比,比率越大,说明越饱和.

3、内存使用情况统计(sar -r 1 2 )

$ sar -r
Linux 3.10.-514.26..el7.x86_64 (VM_17_110_centos) 2017年10月22日 _x86_64_ ( CPU) 10时46分51秒 kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty
10时46分52秒 98.17 73.32
10时46分53秒 98.17 73.32
平均时间: 98.17 73.32

输出说明

kbmemfree 空闲物理内存
kbmemused 已使用物理内存
%memused 已使用内存占总内存百分比
kbbuffers Buffer Cache大小
kbcached Page Cache大小
kbcommit 应用程序当前使用内存大小
%commit 应用程序使用内存百分比

4、网卡流量使用情况统计(sar -n DEV 1 2)

$ sar -n DEV
Linux 3.10.-514.26..el7.x86_64 (VM_17_110_centos) 2017年10月22日 _x86_64_ ( CPU) 10时47分51秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
10时47分52秒 eth0 42.00 39.00 13.06 11.54 0.00 0.00 0.00
10时47分52秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10时47分52秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
10时47分53秒 eth0 17.00 20.00 4.90 7.58 0.00 0.00 0.00
10时47分53秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 平均时间: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
平均时间: eth0 29.50 29.50 8.98 9.56 0.00 0.00 0.00
平均时间: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00

输出说明

IFACE: 网络接口名称
rxpck/s: 每秒收包的数量
txpck/s: 每秒发包的数量
rxkB/s: 每秒收的数据量(kB为单位)
txkB/s: 每秒发的数据量(kB为单位)
rxcmp/s:每秒钟接收的压缩数据包
txcmp/s:每秒钟发送的压缩数据包
rxmcst/s:每秒钟接收的多播数据包

参考资料

1、使用sar进行性能分析

Linux性能测试分析命令_sar的更多相关文章

  1. Linux性能测试分析命令_sar+iostat+vmstat+top

    sar主要用于收集并统计系统资源的信息,包括CPU.IO.内存.网卡流量等. vmstat命令主要是对操作系统的虚拟内存.进程.IO读写.CPU活动等整体情况进行统计.但是它不能对某个进程进行深入分析 ...

  2. Linux性能测试分析命令_top

    top命令动态展示系统整体资源和各个进程资源占用状况,是Linux下常用的性能分析工具. top命令语法 使用格式:top [-] [d] [b] [H] [p] [q] [c] [C] [S] [s ...

  3. Linux性能测试分析命令_vmstat

    vmstat命令主要是对操作系统的虚拟内存.进程.IO读写.CPU活动等整体情况进行统计.但是它不能对某个进程进行深入分析. vmstat基本语法 命令使用格式:vmstat [options] [d ...

  4. Linux性能测试分析命令_iostat

    iostat用于输出CPU和磁盘I/O相关的统计信息 iostat语法 用法:iostat [ 选项 ] [ <时间间隔> [ <次数> ]] 常用选项说明: -c:只显示系统 ...

  5. [转帖]Linux性能测试 pmap命令

    Linux性能测试 pmap命令 https://www.cnblogs.com/txw1958/archive/2012/07/26/linux-pmap.html 名称:       pmap - ...

  6. Linux性能分析命令工具汇总

    转自:http://rdc.hundsun.com/portal/article/731.html?ref=myread 出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章. ...

  7. linux性能分析命令top

    发布时间: 2013-12-14浏览次数:154分类: 服务器 top是linux最常用的性能分析工具了,它是个交互式工具,提供系统的整体性能,如正在执行的进程信息包括进程ID,内存占用率,CPU占用 ...

  8. linux 性能分析命令及其解释

    很多时候,我们需要对linux上运行的环境大体有一个了解,那么久需要大体知道当前系统的相关资源的使用情况,那么可以用一些linux提供的丰富的命令来查看 性能分析 vmstat 虚拟内存统计 用法 U ...

  9. linux性能分析命令1:top命令

    转载:http://www.cnblogs.com/peida/archive/2012/12/24/2831353.html top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的 ...

随机推荐

  1. vue todolist待办事项完整

    <template> <div id="app"> <input type="text" v-model='todo' @keyd ...

  2. Kafka参数详解

    一.相关参数配置 System 系统参数 #唯一标识在集群中的ID,要求是正数. broker.id=0 #服务端口,默认9092 port=9092 #监听地址,不设为所有地址 host.name= ...

  3. IDEA15使用maven编译scala和java

    机器安装maven,在IDEA中配置maven的home 创建项目:new-maven–> scala-archetype-simple project structure–>创建src. ...

  4. 批处理taskkill运行结束不掉程序以及停留问题

    我原来就一句代码 TASKKILL /F /IM QQ.exe 保存为taskkill.bat,结果运行起来一直显示,但是没有结束掉进程,百度搜索才知道taskkill为系统关键字,不能命名为task ...

  5. pthread mutex

    pthead_mutex_t mutex; 1:create: pthread_mutex_init(pthread_mutex_t* mutex, const pthread_mutexattr_t ...

  6. 配置MySQL GTID(Global Transaction IDs)复制

    一.GTID的简介 1.GTID的概述 .全局事物标识:global transaction identifieds. .GTID事物是全局唯一性的,且一个事务对应一个GTID. .一个GTID在一个 ...

  7. requests模块报错:Use body.encode('utf-8') if you want to send it encoded in UTF-8.

    在做 企业向微信用户个人付款  功能时,调用第三方sdk,在 进行 requests 的post请求时, 代码如下 req = requests.post(url, data=data,cert(ap ...

  8. vue中实时监听对象或变量的变化

    demo中监听了Input的变化,主要用到的是watch 1. 监听单个对象: <template> <div class="personal-center"&g ...

  9. JIRA敏捷sprint需求统计设置

    1.JIRA->My Dashboard ->添加它的过滤条件 2.过滤条件产生,将sql拷贝至步骤1编辑的JQL中

  10. VS出现异常?!和十进制转二进制比是小事

    今天被VS的纠错机制下了一小跳. 使用VS时,如果代码出现异常,比如我,运行代码时,出现了无限循环,在调试的时候VS会自动停止运行,并在错误代码行断点提示. 之后会出现一个杂项文件,提示你这里错了.注 ...