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

sar语法

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

常用选项说明:

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

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

常用实例

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

  1. $ sar
  2. Linux 3.10.-514.26..el7.x86_64 (VM_17_110_centos) 20171022 _x86_64_ ( CPU)
  3.  
  4. 104318 CPU %user %nice %system %iowait %steal %idle
  5. 104320 all 0.63 0.00 0.38 0.00 0.00 99.00
  6. 104322 all 0.88 0.00 0.63 0.88 0.00 97.62
  7. 104324 all 0.75 0.00 0.25 0.00 0.00 99.00
  8. 平均时间: all 0.75 0.00 0.42 0.29 0.00 98.54

输出说明:

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

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

  1. $ sar -d -p
  2. Linux 3.10.-514.26..el7.x86_64 (VM_17_110_centos) 20171022 _x86_64_ ( CPU)
  3.  
  4. 104552 DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
  5. 104553 vda 2.00 0.00 24.00 12.00 0.03 13.00 6.50 1.30
  6. 104553 vdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  7. 104553 vdc 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  8.  
  9. 104553 DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
  10. 104554 vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  11. 104554 vdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  12. 104554 vdc 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  13.  
  14. 平均时间: DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
  15. 平均时间: vda 1.00 0.00 12.00 12.00 0.01 13.00 6.50 0.65
  16. 平均时间: vdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  17. 平均时间: vdc 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

输出说明:

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

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

  1. $ sar -r
  2. Linux 3.10.-514.26..el7.x86_64 (VM_17_110_centos) 20171022 _x86_64_ ( CPU)
  3.  
  4. 104651 kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty
  5. 104652 98.17 73.32
  6. 104653 98.17 73.32
  7. 平均时间: 98.17 73.32

输出说明

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

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

  1. $ sar -n DEV
  2. Linux 3.10.-514.26..el7.x86_64 (VM_17_110_centos) 20171022 _x86_64_ ( CPU)
  3.  
  4. 104751 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
  5. 104752 eth0 42.00 39.00 13.06 11.54 0.00 0.00 0.00
  6. 104752 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  7.  
  8. 104752 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
  9. 104753 eth0 17.00 20.00 4.90 7.58 0.00 0.00 0.00
  10. 104753 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  11.  
  12. 平均时间: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
  13. 平均时间: eth0 29.50 29.50 8.98 9.56 0.00 0.00 0.00
  14. 平均时间: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00

输出说明

  1. IFACE: 网络接口名称
  2. rxpck/s: 每秒收包的数量
  3. txpck/s: 每秒发包的数量
  4. rxkB/s: 每秒收的数据量(kB为单位)
  5. txkB/s: 每秒发的数据量(kB为单位)
  6. rxcmp/s:每秒钟接收的压缩数据包
  7. txcmp/s:每秒钟发送的压缩数据包
  8. 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. Rehash死锁的问题

    为什么都说HashMap是线程不安全的呢?它在多线程环境下,又会发生什么情况呢? resize死循环 我们都知道HashMap的初始容量是16,一般来说,当插入数据时,都会检查容量有没有超过设定的th ...

  2. typescript接口的概念 以及属性类型接口

    /* 1.vscode配置自动编译 1.第一步 tsc --inti 生成tsconfig.json 改 "outDir": "./js", 2.第二步 任务 ...

  3. Python: 如何写一个异常

    例子1 try: #test area function() except Exception, e: print e.message 例子2:用raise抛出一个异常 if bool_var is ...

  4. C#对windows的IP网络测试(ping ip)

    private string CmdPing(string strIp) { Process p = new Process(); //设定程序名 p.StartInfo.FileName = &qu ...

  5. How Computers Boot Up.计算机的引导过程

    原文标题:How Computers Boot Up 原文地址:http://duartes.org/gustavo/blog/ [注:本人水平有限,只好挑一些国外高手的精彩文章翻译一下.一来自己复习 ...

  6. php会话控制技术

    为什么会使用会话控制技术: 允许服务器跟踪统一用户做出的请求 setcookie($name,$value,$expire,$path,$domain,$secure) 参数:名称.值.过期时间.路径 ...

  7. (转)C#串口SerialPort常用属性方法

    SerialPort(): //属性 .BaudRate;获取或设置波特率 .BytesToRead;得到 接收到数据的字节数 .BytesToWrites;得到送往串口的字节数 .DataBits; ...

  8. Webpack配置及使用

    ##如何将js模块化 ### module.exports() ### module.require() ### 自定义文件,进入时需要./ ### npm下载得到文件,不需要./ ##如果使用第三方 ...

  9. 非阻塞套接字编程, IO多路复用(epoll)

    非阻塞套接字编程: server端 import socket server = socket.socket() server.setblocking(False) server.bind(('', ...

  10. 【Python爬虫实战】 使用代理服务器

    代理服务器:是一个处于我们与互联网中间的服务器,如果使用代理服务器,我们浏览信息的时候,先向代理服务器发出请求,然后又代理服务向互联网获取信息,再返回给我们使用代理服务器进行信息爬取,可以很好的解决I ...