在说命令之前先查看liunx环境有没有安装,查看命令 rpm -qa |grep sysstat
显示 sysstat-9.0.4-27.el6.x86_64 说明已经安装,如果没有安装用yum工具安装一下,命令:如果是 CentOS,那么用 yum install -y sysstat 安装。
sysstat是一个工具包,包含有几个很有用的系统检测程序,iostat,mpstat和sar.
Turbolinux的各个版本上,都包含这个工具包.
iostat用于输出CPU,I/O系统和磁盘分区的统计信息.可以用来分析磁盘I/O,带宽等信息.
mpstat用于输出CPU的各种统计信息. 可以用来分析程序运行时在内核态和用户态的工作情况.
sar用于定时搜集系统的各种状态信息.然后可以对系统各个时间点的状态进行监控.
sar工具的使用方式为”sar [选项] intervar [count]”,其中interval为统计信息采样时间,count为采样次数。
下文将说明如何使用sar获取以下性能分析数据:
整体CPU使用统计
各个CPU使用统计
内存使用情况统计
整体I/O情况
各个I/O设备情况
网络统计
整体CPU使用统计(-u)
使用-u选项,sar输出整体CPU的使用情况,不加选项时,默认使用的就是-u选项。以下命令显示采样时间为1s,采样次数为2次,整体CPU的使用情况:
[root@vm-156-223-dev03-hp ~]# sar -u 1 2
Linux 2.6.32-925.431.29.2.letv.el6.x86_64 (vm-156-223-dev03-hp.bj-cn.vpc.letv.cn) 07/23/2015 _x86_64_ (2 CPU)
11:52:26 AM CPU %user %nice %system %iowait %steal %idle
11:52:27 AM all 0.00 0.00 0.00 0.00 0.00 100.00
11:52:28 AM all 0.00 0.00 0.00 0.00 0.00 100.00
Average: all 0.00 0.00 0.00 0.00 0.00 100.00
以上主要的统计项的解析如下:
%user: 用户态下CPU使用时间比率
%system: 内核态下CPU使用时间比率
%iowait: CPU等待I/O占用时间比率
%idle: CPU空闲时间比率
各个CPU使用统计(-P)
“-P ALL”选项指示对每个内核输出统计信息:
[root@vm-156-223-dev03-hp ~]# sar -P ALL 1 1
Linux 2.6.32-925.431.29.2.letv.el6.x86_64 (vm-156-223-dev03-hp.bj-cn.vpc.letv.cn) 07/23/2015 _x86_64_ (2 CPU)
11:54:17 AM CPU %user %nice %system %iowait %steal %idle
11:54:18 AM all 0.00 0.00 0.00 0.00 0.50 99.50
11:54:18 AM 0 0.99 0.00 0.99 0.00 0.00 98.02
11:54:18 AM 1 0.00 0.00 0.00 0.00 0.00 100.00
Average: CPU %user %nice %system %iowait %steal %idle
Average: all 0.00 0.00 0.00 0.00 0.50 99.50
Average: 0 0.99 0.00 0.99 0.00 0.00 98.02
Average: 1 0.00 0.00 0.00 0.00 0.00 100.00
其中”CPU”列输出0,1,2,3指示对应的cpu核。也可针对单独一个内核显示,“-P 1”指示显示第二个内核的统计信息。
内存使用情况统计(-r)
使用-r选项可显示内存统计信息,以下命令显示以1秒为采样时间,显示2次内存信息:
[root@vm-156-223-dev03-hp ~]# sar -r 1 2
Linux 2.6.32-925.431.29.2.letv.el6.x86_64 (vm-156-223-dev03-hp.bj-cn.vpc.letv.cn) 07/23/2015 _x86_64_ (2 CPU)
11:55:11 AM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit
11:55:12 AM 646036 1276312 66.39 314620 703632 189432 4.71
11:55:13 AM 646036 1276312 66.39 314620 703632 189432 4.71
Average: 646036 1276312 66.39 314620 703632 189432 4.71
上面输出的内存单位为”kb”,各项的名称可自解析其含义。
整体I/O情况(-b)
使用-b选项,可以显示磁盘I/O的使用情况:
[root@vm-156-223-dev03-hp ~]# sar -b 1 2
Linux 2.6.32-925.431.29.2.letv.el6.x86_64 (vm-156-223-dev03-hp.bj-cn.vpc.letv.cn) 07/23/2015 _x86_64_ (2 CPU)
11:56:05 AM tps rtps wtps bread/s bwrtn/s
11:56:06 AM 0.00 0.00 0.00 0.00 0.00
11:56:07 AM 0.00 0.00 0.00 0.00 0.00
Average: 0.00 0.00 0.00 0.00 0.00
以上各列的含义为:
tps: 每秒向磁盘设备请求数据的次数,包括读、写请求,为rtps与wtps的和。出于效率考虑,每一次IO下发后并不是立即处理请求,而是将请求合并(merge),这里tps指请求合并后的请求计数。
rtps: 每秒向磁盘设备的读请求次数
wtps: 每秒向磁盘设备的写请求次数
bread: 每秒从磁盘读的bytes数量
bwrtn: 每秒向磁盘写的bytes数量
各个I/O设备情况(-d)
使用-d选项可以显示各个磁盘的统计信息,再增加-p选项可以以sdX的形式显示设备名称:
[root@vm-156-223-dev03-hp ~]# sar -d -p 1 1
Linux 2.6.32-925.431.29.2.letv.el6.x86_64 (vm-156-223-dev03-hp.bj-cn.vpc.letv.cn) 07/23/2015 _x86_64_ (2 CPU)
11:57:12 AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
11:57:13 AM vda 1.02 0.00 8.16 8.00 0.00 3.00 3.00 0.31
11:57:13 AM vdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:57:13 AM VGSYS-lv_var 1.02 0.00 8.16 8.00 0.00 3.00 3.00 0.31
11:57:13 AM VGSYS-lv_root 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:57:13 AM VGSYS-lv_letv 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: vda 1.02 0.00 8.16 8.00 0.00 3.00 3.00 0.31
Average: vdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: VGSYS-lv_var 1.02 0.00 8.16 8.00 0.00 3.00 3.00 0.31
Average: VGSYS-lv_root 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: VGSYS-lv_letv 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
以上输出中DEV列以sdX的方式显示了设备名称。
网络统计(-n)
使用-n选项可以对网络使用情况进行显示,-n后接关键词”DEV”可显示eth0、eth1等网卡的信息:
[root@vm-156-223-dev03-hp ~]# sar -n DEV 1 1
Linux 2.6.32-925.431.29.2.letv.el6.x86_64 (vm-156-223-dev03-hp.bj-cn.vpc.letv.cn) 07/23/2015 _x86_64_ (2 CPU)
11:58:04 AM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
11:58:05 AM lo 6.00 6.00 0.31 0.31 0.00 0.00 0.00
11:58:05 AM eth0 49.00 6.00 4.77 0.62 0.00 0.00 0.00
11:58:05 AM eth1 8.00 0.00 0.45 0.00 0.00 0.00 0.00
Average: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
Average: lo 6.00 6.00 0.31 0.31 0.00 0.00 0.00
Average: eth0 49.00 6.00 4.77 0.62 0.00 0.00 0.00
Average: eth1 8.00 0.00 0.45 0.00 0.00 0.00 0.00
以上主要输出含义如下:
IFACE: 网络接口名称
rxpck/s: 每秒收包的数量
txpck/s: 每秒发包的数量
rxkB/s: 每秒收的数据量(kB为单位)
txkB/s: 每秒发的数据量(kB为单位)
sar日志保存(-o)
最后讲一下如何保存sar日志,使用-o选项,我们可以把sar统计信息保存到一个指定的文件,对于保存的日志,我们可以使用-f选项读取:
[root@vm-156-223-dev03-hp ~]# sar -n DEV 1 10 -o sar.out
[root@vm-156-223-dev03-hp ~]# sar -d 1 10 -f sar.out
相比将结果重定向到一个文件,使用-o选项,可以保存更多的系统资源信息。
----------------------------------------------------------------------------------------------------------------------------------------------
sar 既能报告当前数据,也能报告历史数据
不带选项执行会以10分钟为间隔报告自午夜起当天的CPU利用率。
脚本sal收集了这些历史数据,它是sar软件包的一部分,必须设置为定期从cron里运行
sar把自已收集的数据以二进制格式保存在/var/log/sa里
使用 sar -d 可以得到当天磁盘活动的情况汇总
sar -n DEV 则能给出网络接口的统计信息
sar -A 可以报告所有的信息
sar 适用于快速粗略了解历史信息。
sar 命令行的常用格式: sar [options] [-o file] t [n]
options 为命令行选项,sar命令的选项很多,下面只列出常用选项:
-A:所有报告的总和。
-u:CPU利用率
-v:进程、I节点、文件和锁表状态。
-d:硬盘使用报告。
-r:没有使用的内存页面和硬盘块。
-g:串口I/O的情况。
-b:缓冲区使用情况。
-a:文件读写情况。
-c:系统调用情况。
-R:进程的活动情况。
-y:终端设备活动情况。
-w:系统交换活动。
sar 1 10 > data.txt
//每隔1秒,写入10次,把CPU使用数据保存到data.txt文件中。
sar 1 0 -e 15:00:00 > data.txt
//每隔1秒记录CPU的使用情况,直到15点,数据将保存到data.txt文件中。(-e 参数表示结束时间,注意时间格式:必须为hh:mm:ss格式)
sar 1 0 -r -e 15:00:00 > data.txt
//每隔1秒记录内存使用情况,直到15点,数据将保存到data.txt文件中。
sar 1 0 -n DEV -e 15:00:00 > data.txt
//每隔1秒记录网络使用情况,直到15点,数据将保存到data.txt文件中。
相关推荐
Linux下的sar工具是一款强大的系统活动分析...总的来说,sar工具是Linux系统管理员监控系统性能、诊断问题和优化系统的关键工具,通过各种参数组合,它可以提供丰富的系统活动报告,帮助我们深入理解系统的运行状态。
`sar`(System Activity Reporter)是Linux下的一个强大的系统性能分析工具,它是`sysstat`软件包的一部分。通过`sar`,我们可以收集并分析系统的各种运行数据,包括CPU利用率、内存使用情况、磁盘I/O等。 **sar的...
`sar` 命令是系统活动报告(System Activity Reporter)的一部分,它是 `sysstat` 软件包中的一个工具,用于收集和显示Linux系统的性能数据,包括CPU使用率、磁盘I/O、内存使用以及网络活动等。在描述中提到了与网络...
**SAR命令详解** SAR(System Activity Report)是Linux系统中的一个强大的性能监控工具,它能够收集并报告系统活动信息,包括CPU利用率、内存使用、磁盘I/O、网络流量等多方面的数据,帮助系统管理员监控和诊断...
SAR 由四个部分组成:sar 工具、sa1 工具、sa2 工具和 sadc 工具。sar 工具负责收集、报告并存储系统活跃的信息;sa1 工具负责收集并存储每天系统动态信息到一个二进制的文件中;sa2 工具负责把每天的系统活跃性息...
sar工具将对系统当前的状态进行取样,然后通过计算数据和比例来表达系统的当前运行状态。它的特点是可以连续对系统取样,获得大量的取样数据。取样数据和分析的结果都可以存入文件,使用它时消耗的系统资源很小。 ...
在Linux系统管理中,有效监控系统资源的使用情况至关重要,SAR(System Activity Report)命令就是这样一个强大的工具。SAR命令可以帮助管理员了解系统的运行状态,尤其是在遇到系统性能下降、卡顿等问题时,通过...
Sar工具详解 `sar`是System Activity Reporter的缩写,它能够实时显示和统计系统性能数据,包括CPU利用率、内存使用情况、磁盘I/O、网络活动等。`sar`的优势在于其灵活性和全面性,可以按照用户设定的时间间隔收集...
在Linux操作系统中,`sar`命令是系统活动报告(System Activity Reporter)工具,它提供了丰富的功能,用于监控和分析系统的性能。`sar`能够收集和显示关于CPU使用、内存使用、磁盘I/O、网络活动等多种系统指标的数据...
SysUsage-Sar-3.2是一款强大的系统性能监控工具,它基于Sar(System Activity Reporter)命令,用于收集、报告和分析Linux系统的各种资源使用情况。Sar是Unix和Linux系统中不可或缺的系统监控工具,特别适用于长期...
SAR命令是系统管理员的强大工具,通过定时收集和分析系统性能数据,可以有效地监控系统运行状态,找出潜在的性能瓶颈,及时优化系统配置。无论是实时监控还是事后分析,SAR都能提供详尽的报告,帮助提升系统的整体...
综上所述,`sar`和`vmstat`命令都是极其重要的系统监控工具,通过它们可以详细了解系统的运行状况,及时发现并解决潜在问题,确保系统的稳定性和高效性。在实际应用中,应根据具体的监控需求灵活选择合适的参数组合...
#### 四、`sar`命令参数详解 `sar`命令提供了丰富的参数选项,可以帮助管理员更精确地监控系统的各个方面。 - **`-A`标志:**如果没有使用`-P`标志,则使用`-A`标志相当于指定了`-abckmqruvwy`。当与`-P`标志一起...
`sar`命令作为一款功能强大的系统性能分析工具,在这一领域发挥着重要作用。 #### 1. 什么是sar命令? `sar`(System Activity Reporter,系统活动情况报告)是Linux系统中一个非常实用的性能监控工具,它可以收集...
使用`sar`命令可以实时监控系统性能,及时发现和定位系统瓶颈,对于系统管理员来说是不可或缺的工具。通过定期收集和分析`sar`的数据,可以优化系统配置,提高服务器的稳定性和效率。在实际工作中,可以根据需要选择...