Linux系统检测工具sysstat使用实战
用sysstat工具对某机顶盒系统进行性能分析,从cpu性能,内存,网络流量三个方面进行测试.
sysstat是linux系统下的一个软件包,包含一组监测系统性能以及效率的工具,它的主要用途是观察服务负载,比如CPU和内存的占用率、网络的使用率以及磁盘写入和读取速度等。
参数和命令介绍:
sar 的命令格式为:
sar [ -A ] [ -b ] [ -B ] [ -c ] [ -d ] [ -i interval ] [ -p ] [ -q ]
[ -r ] [ -R ] [ -t ] [ -u ] [ -v ] [ -V ] [ -w ] [ -W ] [ -y ]
[ -n { DEV | EDEV | NFS | NFSD | SOCK | ALL } ]
[ -x { pid | SELF | ALL } ] [ -X { pid | SELF | ALL } ]
[ -I { irq | SUM | ALL | XALL } ] [ -P { cpu | ALL } ]
[ -o [ filename ] | -f [ filename ] ]
[ -s [ hh:mm:ss ] ] [ -e [ hh:mm:ss ] ]
[ interval [ count ] ]
其中:
interval : 为取样时间间隔
count : 为输出次数,若省略此项,默认值为 1
常用选项:
选项 说明
-A 等价于 -bBcdqrRuvwWy -I SUM -I XALL -n ALL -P ALL
-b 显示I/O和传送速率的统计信息
-B 输出内存页面的统计信息
-c 输出进程统计信息,每秒创建的进程数
-d 输出每一个块设备的活动信息
-i interval 指定间隔时长,单位为秒
-p 显示友好设备名字,以方便查看,也可以和-d 和-n 参数结合使用,比如 -dp 或-np
-q 输出进程队列长度和平均负载状态统计信息
-r 输出内存和交换空间的统计信息
-R 输出内存页面的统计信息
-t 读取 /var/log/sa/saDD 的数据时显示其中记录的原始时间,如果没有这个参数使用用户的本地时间
-u 输出CPU使用情况的统计信息
-v 输出inode、文件和其他内核表的统计信息
-V 输出版本号信息
-w 输出系统交换活动信息
-W 输出系统交换的统计信息
-y 输出TTY设备的活动信息
-n {DEV|EDEV|NFS|NFSD|SOCK|ALL} 分析输出网络设备状态统计信息。
DEV 报告网络设备的统计信息
EDEV 报告网络设备的错误统计信息
NFS 报告 NFS 客户端的活动统计信息
NFSD 报告 NFS 服务器的活动统计信息
SOCK 报告网络套接字(sockets)的使用统计信息
ALL 报告所有类型的网络活动统计信息
-x {pid|SELF|ALL} 输出指定进程的统计信息。
pid 用 pid 指定特定的进程
SELF 表示 sar 自身
ALL 表示所有进程
-X {pid|SELF|ALL} 输出指定进程的子进程的统计信息
-I {irq|SUM|ALL|XALL} 输出指定中断的统计信息。
irq 指定中断号
SUM 指定输出每秒接收到的中断总数
ALL 指定输出前16个中断
XALL 指定输出全部的中断信息
-P {cpu|ALL} 输出指定 CPU 的统计信息
-o filename 将输出信息保存到文件 filename
-f filename 从文件 filename 读取数据信息。filename 是使用-o 选项时生成的文件。
-s hh:mm:ss 指定输出统计数据的起始时间
-e hh:mm:ss 指定输出统计数据的截至时间,默认为18:00:00
1、输出CPU使用情况的统计信息
# sar -u
12:00:01 AM CPU %user %nice %system %iowait %steal %idle
12:10:01 AM all 0.02 0.00 0.14 0.01 0.00 99.84
12:20:01 AM all 0.02 0.00 0.12 0.01 0.00 99.86
12:30:01 AM all 0.01 0.00 0.12 0.01 0.00 99.86
Average: all 0.03 0.00 0.13 0.01 0.00 99.84
输出项说明:
CPU all 表示统计信息为所有 CPU 的平均值。
%user 显示在用户级别(application)运行使用 CPU 总时间的百分比。
%nice 显示在用户级别,用于nice操作,所占用 CPU 总时间的百分比。
%system 在核心级别(kernel)运行所使用 CPU 总时间的百分比。
%iowait 显示用于等待I/O操作占用 CPU 总时间的百分比。
%steal 管理程序(hypervisor)为另一个虚拟进程提供服务而等待虚拟 CPU 的百分比。
%idle 显示 CPU 空闲时间占用 CPU 总时间的百分比。
若 %iowait 的值过高,表示硬盘存在I/O瓶颈 若 %idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量 若 %idle 的值持续低于 10,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是CPU。
2、输出内存页面的统计信息
# sar -B
12:00:01 AM pgpgin/s pgpgout/s fault/s majflt/s
12:10:01 AM 0.00 4.17 9.74 0.00
12:20:01 AM 0.00 2.71 2.24 0.00
12:30:01 AM 0.00 2.69 2.25 0.00
Average: 0.00 3.17 4.07 0.00
输出项说明:
pgpgin/s 每秒钟从磁盘读入的系统页面的 KB 总数
pgpgout/s 每秒钟向磁盘写出的系统页面的 KB 总数
fault/s 系统每秒产生的页面失效(major + minor)数量
majflt/s 系统每秒产生的页面失效(major)数量
3、输出内存和交换空间的统计信息
# sar -r
12:00:01 AM kbmemfree kbmemused %memused kbbuffers kbcached kbswpfree kbswpused %swpused kbswpcad
12:10:01 AM 262068 253408 49.16 43884 156456 1048568 0 0.00 0
12:20:01 AM 261572 253904 49.26 44580 156448 1048568 0 0.00 0
12:30:01 AM 260704 254772 49.42 45124 156472 1048568 0 0.00 0
Average: 259551 255925 49.65 46453 156470 1048568 0 0.00 0
输出项说明:
kbmemfree 可用的空闲内存数量,单位为 KB
kbmemused 已使用的内存数量(不包含内核使用的内存),单位为 KB
%memused 已使用内存的百分数
kbbuffers 内核缓冲区(buffer)使用的内存数量,单位为 KB
kbcached 内核高速缓存(cache)数据使用的内存数量,单位为 KB
kbswpfree 可用的空闲交换空间数量,单位为 KB
kbswpused 已使用的交换空间数量,单位为 KB
%swpused 已使用交换空间的百分数
kbswpcad 交换空间的高速缓存使用的内存数量
4、 输出系统交换的统计信息
# sar -W
12:00:01 AM pswpin/s pswpout/s
12:10:01 AM 0.00 0.00
12:20:01 AM 0.00 0.00
12:30:01 AM 0.00 0.00
Average: 0.00 0.00
输出项说明:
pswpin/s 每秒系统换入的交换页面(swap page)数量
pswpout/s 每秒系统换出的交换页面(swap page)数量
5、输出进程队列长度和平均负载状态统计信息
# sar -q
12:00:01 AM runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15
12:10:01 AM 0 85 0.02 0.01 0.00
12:20:01 AM 0 85 0.01 0.00 0.00
12:30:01 AM 0 85 0.03 0.01 0.00
Average: 0 85 0.01 0.00 0.00
输出项说明:
runq-sz 运行队列的长度(等待运行的进程数)
plist-sz 进程列表中进程(processes)和线程(threads)的数量
ldavg-1 最后1分钟的系统平均负载(System load average)
ldavg-5 过去5分钟的系统平均负载
ldavg-15 过去15分钟的系统平均负载
6、输出网络设备状态的统计信息
# sar -n DEV
12:00:01 AM IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s
12:10:01 AM eth0 0.59 0.92 41.57 893.98 0.00 0.00 0.00
12:20:01 AM eth0 0.55 0.88 37.50 859.56 0.00 0.00 0.00
12:30:01 AM eth0 0.55 0.86 38.17 871.98 0.00 0.00 0.00
Average: eth0 0.29 0.42 21.05 379.29 0.00 0.00 0.00
输出项说明:
IFACE 网络设备名
rxpck/s 每秒接收的包总数
txpck/s 每秒传输的包总数
rxbyt/s 每秒接收的字节(byte)总数
txbyt/s 每秒传输的字节(byte)总数
rxcmp/s 每秒接收压缩包的总数
txcmp/s 每秒传输压缩包的总数
rxmcst/s 每秒接收的多播(multicast)包的总数
部分测试数据
该部分测试数据为测试中的一部分且都是统计出来的平均值,更多数据请参考测试数据附件。
CPU相关数据
播放前:
[root@luckxiang /]# sar -u -q 3 100
Linux 2.6.27.55 (luckxiang) 01/01/15 _csky_ (1 CPU)
Average: CPU %user %nice %system %iowait %steal %idle
Average: all 0.96 0.00 7.96 0.00 0.00 91.08Average: runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked
Average: 2 79 1.37 1.30 1.25 0
播放中:
[root@luckxiang /]# sar -u -q 3 100
Linux 2.6.27.55 (luckxiang) 01/01/15 _csky_ (1 CPU)Average: CPU %user %nice %system %iowait %steal %idle
Average: all 4.74 0.00 18.43 0.00 0.00 76.83Average: runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked
Average: 3 86 1.30 1.30 1.25 0
内存相关数据:
播放前:
[root@luckxiang /]# sar -r -B -W 3 100
Linux 2.6.27.55 (luckxiang) 01/01/15 _csky_ (1 CPU)Average: pswpin/s pswpout/s
Average: 0.00 0.00Average: pgpgin/s pgpgout/s fault/s majflt/s pgfree/s pgscank/s pgscand/s pgsteal/s %vmeff
Average: 0.00 0.00 553.47 0.00 155.36 0.00 0.00 0.00 0.00Average: kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty
Average: 26609 39071 59.49 5904 13360 264302 402.41 9918 15368 0
播放中:
[root@luckxiang /]# sar -r -B -W 3 100
Linux 2.6.27.55 (luckxiang) 01/01/15 _csky_ (1 CPU)
Average: pswpin/s pswpout/s
Average: 0.00 0.00Average: pgpgin/s pgpgout/s fault/s majflt/s pgfree/s pgscank/s pgscand/s pgsteal/s %vmeff
Average: 0.00 0.00 549.03 0.00 181.96 0.00 0.00 0.00 0.00Average: kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty
Average: 21805 43875 66.80 5904 13360 293345 446.63 14403 15368 0
流量相关数据:
客户提供的测试链接
[root@luckxiang /]# sar -n DEV 2 100 |grep -E 'ra0|IFACE'
Average: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil
Average: ra0 174.68 43.86 194.59 3.68 0.00 0.00 0.00 0.00
云端链接:
[root@luckxiang /]# sar -n DEV 2 100 |grep -E 'ra0|IFACE'
Average: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil
Average: ra0 128.38 65.23 89.67 6.65 0.00 0.00 0.00 0.00
有线连接:
Average: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil
Average: eth0 129.17 41.48 178.44 2.67 0.00 0.00 0.00 0.00
在测试2中,我观察了内存,CPU和流量数据,不同的播放源,对CPU的消耗是不一样的,内存也有充足的剩余空间,播放普通视频CPU空闲时间百分比比较高,播放M3U8视频CPU空闲时间百分比基本为0。补充测试了连接有线的情况,结果差别很大,最大能到1M多,慢的时候和wifi差不多,在有线网速很快的情况下,播放M3U8格式的凤凰视频的时候,也多次出现了缓冲的情况。而播放普通视频则没有出现缓冲。
根据测试分析如下:
是否CPU在播放M3U8格式视频的时候处理能力不够。M3U8格式视频播放的时候,基本上都是隔4,5秒才会下载一次数据,样机也基本上是隔4,5秒取一次数据,我觉得可以关注下M3U8格式视频的解析过程,是不是这个地方解析的时候存在瓶颈,解析太慢导致缓存耗尽,还是说多线程下载过程中影响了当前播放下载线程的速度,所以需要确认两个点,一个是客户测试用的是什么连接,一个是M3U8处理流程是怎么样子的。
Linux系统检测工具sysstat使用实战相关推荐
- Linux系统检测工具
通过检测系统,可以获取一些基准数据,进行分析,根据不同的业务特点系统不同组件的压力,可以有cpu密集型,内存密集型,网络吞吐密集性型,io密集型 一 系统检测工具 Free,Top,ps,Vmsta ...
- Linux系统检测工具 三(Free,Top,ps,Vmstat,Sysstat)
dstat工具,可以做更多的信息采集 安装 [root@hky-linux1 Server]# rpm -ivh dstat-0.6.6-3.el5_4.1.noarch.rpm warning: d ...
- 【0109】Linux系统监测工具sysstat介绍
文章目录 1. sysstat介绍 2. sysstat安装 2.1 从源码编译sysstat 2.1.1 为Android设备编译 3. CPU状态查看 4. IO状态查看 5. 进程状态查看 6. ...
- Linux 系统检测工具
讨论一些最常用的工具:tcpdump nc strace lsof netstat vmstat ifstat 和mpstat ! 1. tcpdump tcpdump表达式的操作数分为三种: 类型 ...
- Linux系统检测命令有哪些
2019独角兽企业重金招聘Python工程师标准>>> Linux系统检测命令有哪些 | 浏览:44 | 更新:2015-02-02 10:16 | 标签:linux top:一个命 ...
- [Linux 性能检测工具]IOSTAT
[Linux 性能检测工具]IOSTAT IOSTAT NAME: Iostat, 报告CPU的统计,和 I/O的统计. 语法: iostat [ -c ] [ -d ] [ -N ...
- 硬盘检测工具+linux,linux硬盘检测工具:Smartmontools使用指南
linux硬盘检测工具:Smartmontools使用指南 来源:互联网 作者:佚名 时间:2013-04-10 13:32 在服务器管理的实际环境中,硬盘是最容易出现问题及发生故障的硬件,而且硬盘中 ...
- Linux中sysstat服务,Linux系统维护常用工具sysstat
Linux系统维护常用工具sysstat 发布时间:2005-12-29 10:37:08来源:红联作者:ming 这个包在各大发行版中都有,如果您试一下有sar这个命令就证明已经有了.如果没有的,可 ...
- 如何在linux系统中还原系统版本,系统还原也简单 常用Linux系统还原工具推荐
据调查发现,一直以来,计算机用户都会被电脑死机.硬盘崩溃和内存芯片损耗过量等问题困扰,而最好的解决方式便是系统还原."系统还原"的目的是在不需要重新安装操作系统,也不会破坏数据文件 ...
- linux防病毒检测,ddos防护:Linux恶意软件检测工具-墨者安全-墨者盾
ddos防护:Linux恶意软件检测工具 Linux恶意软件检测工具(LMD)是一个GNU GPLv2许可下发布的Linux恶意软件扫描器,其设计理念是是针对在共享主机环境中所面临的威胁.它使用来自网 ...
最新文章
- PSM-省电模式(PowerSaving Mode)
- Pytorch 深度学习实战:视频自动打码
- 数据中心能耗结构、PUE、WUE
- python发邮件详解_python实现发送邮件详解
- java中的sql语句书写_Java中sql语句之通配符*
- 事件查看器 无法完成应用程序上的操作,接口未知
- mybatisplus查询今天的数据_springboot集成mybatisPlus
- uos命令_【持续更新】UOS个人版实用技巧集锦
- Software--Data Visual 数据可视化
- -Android的发展webservice-号码归属地查询
- 一步一步教你写股票走势图——分时图一(概述)
- 壮观性能服务器图片介绍,配至强7500 图解惠普ProLiant DL980 G7
- 格式化磁盘重装ubuntn18.04系统后恢复timeshift备份文件
- 解惑“可观测性”与“监控”的不同
- BroadcastRecever
- 51Nod 1737 配对
- O记遭遇罗生门,未来是云原生数据库的!
- Dev C++详细安装教程及软件下载
- DSP实验——TSM320F2812
- python 下三角矩阵_Python | 矩阵的下三角