Linux 从 sar 到 sar2html 的认识
这些变形的工具、诸如:淘宝的Tsar、ksar、sar2html....等、都是通过抓取 sar的数据
所以在最终呈现的数据上变化不大、只是展现的手段和效果不一样而已
sar 是帮助我们了解当前系统的内存、CPU和IO(磁盘IO和网络IO)
下面通过简单的几个方面介绍一下sar的使用
㈠ 内存
以下两个关键指标、让我们对系统使用内存情况一目了然
⑴ 内存使用情况统计
-r:输出物理内存和虚拟内存的统计信息
[root@obe11g ~]# sar -r 5 4
Linux 2.6.9-42.0.0.0.1.EL (obe11g.us.oracle.com) 07/24/2013 05:11:21 AM kbmemfree kbmemused %memused kbbuffers kbcached kbswpfree kbswpused %swpused kbswpcad
05:11:26 AM 291880 1645960 84.94 47836 1309352 4192956 0 0.00 0
05:11:31 AM 291832 1646008 84.94 47836 1309352 4192956 0 0.00 0
05:11:36 AM 291816 1646024 84.94 47836 1309352 4192956 0 0.00 0
05:11:41 AM 293608 1644232 84.85 47836 1309372 4192956 0 0.00 0
Average: 292284 1645556 84.92 47836 1309357 4192956 0 0.00 0 参数解释: kbmemfree:剩余可用内存、单位K
kbmemused:已用内存、以K 为单位、该值不考虑内核自身所使用的内存
%memused:已用内存百分比
kbbuffers:已用buffer(内核所用)、单位K
kbcached:已用cache(内核所用)、单位K
kbswpfree:剩余Swap、单位K
kbswpused:已用Swap、单位K
%swpused:已用Swap百分比
kbswpcad:被缓存的Swap、单位K
⑵ 分页统计
-B [root@obe11g ~]# sar -B 5 5
Linux 2.6.9-42.0.0.0.1.EL (obe11g.us.oracle.com) 07/24/2013 05:16:56 AM pgpgin/s pgpgout/s fault/s majflt/s
05:17:01 AM 0.00 39.20 4.60 0.00
05:17:06 AM 0.00 23.20 117.20 0.00
05:17:11 AM 0.00 23.20 114.00 0.00
05:17:16 AM 0.00 14.40 113.80 0.00
05:17:21 AM 0.80 48.00 1470.00 0.00
Average: 0.16 29.60 363.92 0.00 参数解释: pgpgin/s:表示每秒从磁盘或SWAP置换到内存的字节数(KB)
pgpgout/s:表示每秒从内存置换到磁盘或SWAP的字节数(KB)
fault/s:每秒钟系统产生的缺页数,即主缺页与次缺页之和(major + minor)
majflt/s:每秒钟产生的主缺页数.
㈡ CPU
-u
[root@obe11g ~]# sar -u 3 5
Linux 2.6.9-42.0.0.0.1.EL (obe11g.us.oracle.com) 07/24/2013 05:25:41 AM CPU %user %nice %system %iowait %idle
05:25:44 AM all 2.00 0.00 1.67 0.00 96.33
05:25:47 AM all 0.67 0.00 1.00 0.00 98.33
05:25:50 AM all 2.00 0.00 1.00 0.00 97.00
05:25:53 AM all 4.00 0.00 6.33 0.00 89.67
05:25:56 AM all 0.67 0.00 1.67 0.00 97.67
Average: all 1.87 0.00 2.33 0.00 95.80 参数解释: %user:显示在用户级别(application)运行使用 CPU 总时间的百分比
%nice:显示在用户级别,用于nice操作,所占用 CPU 总时间的百分比
%system:在核心级别(kernel)运行所使用 CPU 总时间的百分比
%iowait:显示用于等待I/O操作占用 CPU 总时间的百分比
%idle:显示 CPU 空闲时间占用 CPU 总时间的百分比
以下是三种常见的场景:
1)若 %iowait 的值过高,表示硬盘存在I/O瓶颈
2)若 %idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量
3)若 %idle 的值持续低于1,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU
㈢ IO
⑴ 磁盘IO
[root@obe11g ~]# sar -b 3 5
Linux 2.6.9-42.0.0.0.1.EL (obe11g.us.oracle.com) 07/24/2013 05:32:02 AM tps rtps wtps bread/s bwrtn/s
05:32:05 AM 0.00 0.00 0.00 0.00 0.00
05:32:08 AM 0.00 0.00 0.00 0.00 0.00
05:32:11 AM 0.00 0.00 0.00 0.00 0.00
05:32:14 AM 0.00 0.00 0.00 0.00 0.00
05:32:17 AM 0.00 0.00 0.00 0.00 0.00
Average: 0.00 0.00 0.00 0.00 0.00 参数解释: tps:每秒磁盘的 I/O 传输总量
rtps:每秒从磁盘读出的数据总量
wtps:每秒向磁盘写入的数据总量
bread/s:每秒从磁盘读出的数据量,单位为 块/s
bwrtn/s:每秒向磁盘写入的数据量,单位为 块/s
⑵ 网络IO
用法sar -n { keyword [,...] | ALL }, keyword包括:
DEV, EDEV, NFS, NFSD, SOCK, IP, EIP, ICMP, EICMP, TCP, ETCP, UDP, SOCK6, IP6, EIP6, ICMP6, EICMP6 和 UDP6
不同的keyword统计不同的方面,关于网络IO的统计主要是用DEV
[root@obe11g ~]# sar -n DEV 2 3
Linux 2.6.9-42.0.0.0.1.EL (obe11g.us.oracle.com) 07/24/2013 05:37:21 AM IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s
05:37:23 AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
05:37:23 AM eth0 14.00 1.00 1969.00 58.00 0.00 0.00 0.00
05:37:23 AM sit0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 05:37:23 AM IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s
05:37:25 AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
05:37:25 AM eth0 8.50 1.00 804.00 42.00 0.00 0.00 0.00
05:37:25 AM sit0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 05:37:25 AM IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s
05:37:27 AM lo 0.50 0.50 44.00 44.00 0.00 0.00 0.00
05:37:27 AM eth0 7.50 0.50 771.50 21.00 0.00 0.00 0.00
05:37:27 AM sit0 0.00 0.00 0.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.17 0.17 14.67 14.67 0.00 0.00 0.00
Average: eth0 10.00 0.83 1181.50 40.33 0.00 0.00 0.00
Average: sit0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
无论是sar、还是其变体、都是只是故障诊断和性能调优的工具、
我的态度是:不依赖不放弃
By DBA_WaterBin
2013-07-24
Good Luck
Linux 从 sar 到 sar2html 的认识的更多相关文章
- Linux使用sar进行性能分析
转:https://blog.csdn.net/xusensen/article/details/54606401#sar%E7%AE%80%E4%BB%8B Linux使用sar进行性能分析 Lin ...
- linux的sar命令未找到
linux的sar命令未找到 一般的命令可以直接使用yum安装,但是sar和mpstat命令这两个命令都是在sysstat包里, 网上的解决方法:rpm -ivh gd-2.0.32-23.2.i58 ...
- Linux系统sar命令解析
安装 如果系统没有该命令请安装: apt-get install sysstat yum install sysstat 安装完毕: vi /etc/default/sysstat ENABLED=& ...
- Linux之sar命令介绍
sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况.系统调用的使用情 ...
- linux下sar tool command note
linux下的sar工具简介 我习惯使用的命令是 : sar -r -f /var/log/sa/sa24 sar 既能报告当前数据,也能报告历史数据 不带选项执行会以10分钟为间隔报告自午夜 ...
- Linux基础——sar 查看网卡流量
sar -n DEV #查看当天从零点到当前时间的网卡流量信息 sar -n DEV 1 10 #每秒显示一次,共显示10次 sar -n DEV -f /var/log/sa/saxx #查看xx日 ...
- Linux性能测试 sar命令
sar命令包含在sysstat工具包中,提供系统的众多统计数据.其在不同的系统上命令有些差异 sar 命令行的常用格式: [root@C44 ~]# sar sysstat version (C) S ...
- linux之sar命令详解
sar(System Activity Reporter系统活动情况报告)是目前Linux上最为全面的系统性能分析工具之一,可以从多个方面对系统的活动进行报告,包括:文件的读写情况.系统调用的使用情况 ...
- linux中sar的详细使用
在使用UNIX操作系统的过程中,我们常常会用到各种各样的问题,比如系统运行速度突然变慢,系统容易死机或者主机所带的终端常出现死机,这时我们常常猜测,是硬盘空间太小,还是内存不足?I/O出现瓶颈,或者是 ...
随机推荐
- Javascript 获取dom的宽度 随笔一
javascript 中 offsetWidth 获得的并不是 真实的宽度 不等于 style.width ;offetWidth 实际上获得的是物体的盒模型尺寸. 包括 border padding ...
- Asp.net中request.QueryString与request.Params的区别 【转】
Request.Form:获取以POST方式提交的数据(接收Form提交来的数据): Request.QueryString:获取地址栏参数(以GET方式提交的数据) Request:包含以上两种方式 ...
- PS5穿越云层3D文字
妈的,搜狗浏览器有时候会出问题,保存的内容找不到了…… 视图--显示参考线或者“显示额外内容”会取消或者加上参考线,后者功能更强一些,ctrl+D有时可以代替后者的功能,后者可以去掉蒙版的参考线,前者 ...
- [Delphi]检查URL是否有效的函数
function CheckUrl(url: string): boolean; var hSession, hfile, hRequest: hInternet; dwindex, dwcodele ...
- android:ListView的局部刷新
1.简介 对于android中的ListView刷新机制,大多数的程序员都是很熟悉的,修改或者添加adapter中的数据源之后,然后调用notifyDataSetChanged()刷新ListView ...
- "Failed to fetch URL https://dl-ssl.google.com/android/repository/addons_list.xml,reason: Connection
"Failed to fetch URL https://dl-ssl.google.com/android/repository/addons_list.xml,reason: Conne ...
- CSDN总结的面试中的十大算法
1.String/Array/Matrix 在Java中,String是一个包含char数组和其它字段.方法的类.如果没有IDE自动完成代码,下面这个方法大家应该记住: toCharArray() / ...
- Delphi 日志的方法 Log
写一个日志的函数,只需要传内容进去即可,自动记录时间的,日志保存在'c:\ErpRunLog.txt'下procedure writeWorkLog(sqlstr: string);var filev ...
- g++ gcc 的区别
我们在编译c/c++代码的时候,有人用gcc,有人用g++,于是各种说法都来了,譬如c代码用gcc,而c++代码用g++,或者说编译用gcc,链 接用g++,一时也不知哪个说法正确,如果再遇上个ext ...
- TCP协议下Socket的基础编程类型
套接字的基本操作有: 创建(socket).命名(bind).侦听(listen).连接(accept).关闭(shutdown).发送(send).接受(recv). 下面逐个分析: 一.创建(so ...