sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,

包括:文件的读写情况、系统调用的使用情况、磁盘I/OCPU效率、内存使用状况、进程活动及IPC有关的活动等

IPC(Inter-Process Communication)进程间通信,提供了各种进程间通信的方法。在Linux C编程中有几种方法
(1) 半双工Unix管道
  (2) FIFOs(命名管道)
  (3) 消息队列
  (4) 信号量
  (5) 共享内存
  (6) 网络Socket

sar [options] [-A] [-o file] t [n]

t为采样间隔,n为采样次数,默认值是1;

-o file表示将命令结果以二进制格式存放在文件中,file 是文件名。

常用选项如下:
-A:所有报告的总和
-r:输出内存和交换空间的统计信息
-u:输出CPU使用情况的统计信息
-c:输出进程统计信息,每秒创建的进程数
-R:输出内存页面的统计信息
-v:输出inode、文件和其他内核表的统计信息 -d:输出每一个块设备的活动信息
-b:显示I/O和传送速率的统计信息
-a:文件读写情况
-y:终端设备活动情况
-w:输出系统交换活动信息

注意:-o 文件名,可以将显示的数据放在文件里

可以使用sar -f 文件名  查看

CPU

[root@VM_0_10_centos ~]# sar -u 5 3
Linux 2.6.32-696.el6.x86_64 (VM_0_10_centos) 05/15/2020 _x86_64_ (1 CPU) 10:38:38 PM CPU %user %nice %system %iowait %steal %idle
10:38:43 PM all 0.60 0.00 0.40 0.00 0.00 99.00
10:38:48 PM all 0.60 0.00 0.20 0.00 0.00 99.20
10:38:53 PM all 0.60 0.00 0.40 0.20 0.00 98.80
Average: all 0.60 0.00 0.33 0.07 0.00 99.00
每个5秒测一测
all 表示统计信息为所有 CPU 的平均值。(多个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 的值持续低于1,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU 。

内存

[root@VM_0_10_centos ~]# sar -r 5 3
Linux 2.6.32-696.el6.x86_64 (VM_0_10_centos) 05/15/2020 _x86_64_ (1 CPU) 10:46:17 PM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit
10:46:22 PM 87556 1834692 95.45 72188 325300 1941736 101.01
10:46:27 PM 90116 1832132 95.31 72196 325296 1934324 100.63
10:46:32 PM 90100 1832148 95.31 72196 325300 1934328 100.63
Average: 89257 1832991 95.36 72193 325299 1936796 100.76
kbmemfree:它不包括buffer和cache的空间.和free命令的free一样
kbmemused:它包括buffer和cache的空间.
%memused:kbmemused/内存总量(不包括swap)
kbbuffers和kbcached:是free命令中的buffer和cache.
kbcommit:保证当前系统所需要的内存,即为了确保不溢出而需要的内存(RAM+swap).
%commit:这个值是kbcommit与内存总量(包括swap)的一个百分比.

I/O

[root@VM_0_10_centos ~]# sar -b 5 3
Linux 2.6.32-696.el6.x86_64 (VM_0_10_centos) 05/15/2020 _x86_64_ (1 CPU) 10:50:12 PM tps rtps wtps bread/s bwrtn/s
10:50:17 PM 2.21 0.00 2.21 0.00 41.77
10:50:22 PM 1.80 0.00 1.80 0.00 35.20
10:50:27 PM 4.62 0.00 4.62 0.00 54.62
Average: 2.87 0.00 2.87 0.00 43.85
tps:每秒钟物理设备的 I/O 传输总量
rtps:每秒钟从物理设备读入的数据总量
wtps:每秒钟向物理设备写入的数据总量
bread/s:每秒钟从物理设备读入的数据量,单位为 块/s
bwrtn/s:每秒钟向物理设备写入的数据量,单位为 块/s

inode ,file,其他内核

[root@VM_0_10_centos ~]# sar -v 5 3
Linux 2.6.32-696.el6.x86_64 (VM_0_10_centos) 05/15/2020 _x86_64_ (1 CPU) 10:52:17 PM dentunusd file-nr inode-nr pty-nr
10:52:22 PM 6552 928 9491 1
10:52:27 PM 6524 832 9445 1
10:52:32 PM 6524 832 9445 1
Average: 6533 864 9460 1
dentunusd:目录高速缓存中未被使用的条目数量
file-nr:文件句柄(file handle)的使用数量
inode-nr:索引节点句柄(inode handle)的使用数量
pty-nr:使用的pty数量,这就是虚拟终端pty(pseudo-tty)

进程队列长度和平均负载

[root@VM_0_10_centos ~]# sar -q 5 3
Linux 2.6.32-696.el6.x86_64 (VM_0_10_centos) 05/16/2020 _x86_64_ (1 CPU) 10:38:39 AM runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15
10:38:44 AM 0 154 0.00 0.00 0.00
10:38:49 AM 0 151 0.00 0.00 0.00
10:38:54 AM 0 152 0.00 0.00 0.00
Average: 0 152 0.00 0.00 0.00
runq-sz:运行队列的长度(等待运行的进程数)
plist-sz:进程列表中进程(processes)和线程(threads)的数量
ldavg-1:最后1分钟的系统平均负载(System load average)
ldavg-5:过去5分钟的系统平均负载
ldavg-15:过去15分钟的系统平均负载

sar 系统活动情况报告的更多相关文章

  1. sar命令查看网卡流量 (System ActivityReporter系统活动情况报告)

    sar命令查看网卡流量 2016年06月14日 03:31:29 WarriorTan 阅读数:9748更多 个人分类: Linux   版权声明:本文为博主原创文章,未经博主允许不得转载. http ...

  2. ar是System Activity Reporter(系统活动情况报告)的缩写。这

    ar是System Activity Reporter(系统活动情况报告)的缩写.这个工具所需要的负载很小,也是目前linux中最为全面的性能分析工具之一.此款工具将对系统当前的状态就行取样,然后通过 ...

  3. hadoop集群空间使用情况报告脚本

    近期集群空间有点紧张,总是操心空间不足而崩溃,近期扩容又不太现实,经与集群用户沟通发现:集群上存储了非常多没用的历史数据,能够删除,这样就能够通过一个crontab脚本每天生成集群空间使用报告,当使用 ...

  4. Linux系统性能分析工具 sar--系统活动情况报告

    1.结论: sar 命令是linux系统上,分析系统性能的常用工具,可以查看cpu.内存.磁盘IO.文件读写.系统调用, 2.sar会有一个定时任务,定期记录当前系统信息到  /var/log/sa/ ...

  5. Linux之sar命令介绍

    sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况.系统调用的使用情 ...

  6. Linux系统性能统计工具Sar和实时系统性能监控脚本

    sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况.系统调用的使用情 ...

  7. sar 找出系统瓶颈的利器

    sar 找出系统瓶颈的利器sar是System Activity Reporter(系统活动情况报告)的缩写.sar工具将对系统当前的状态进行取样,然后通过计算数据和比例来表达系统的当前运行状态.它的 ...

  8. linux sar 命令详解

    sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况.系统调用的使用情 ...

  9. vmstat,iostat,sar命令详解

    Procs r: 等待运行的进程数 b: 处在非中断睡眠状态的进程数 w: 被交换出去的可运行的进程数.此数由 linux 计算得出,但 linux 并不耗尽交换空间 Memory swpd: 虚拟内 ...

随机推荐

  1. keras框架下的深度学习(二)二分类和多分类问题

    本文第一部分是对数据处理中one-hot编码的讲解,第二部分是对二分类模型的代码讲解,其模型的建立以及训练过程与上篇文章一样:在最后我们将训练好的模型保存下来,再用自己的数据放入保存下来的模型中进行分 ...

  2. 第32篇-解析interfacevirtual字节码指令

    在前面介绍invokevirtual指令时,如果判断出ConstantPoolCacheEntry中的_indices字段的_f2属性的值为空,则认为调用的目标方法没有连接,也就是没有向Constan ...

  3. Noip模拟29(瞎眼忌) 2021.8.3

    T1 最长不下降子序列 在此记录自己的瞎眼... 考场上像一个傻$der$,自己为了防范上升序列和不下降序列的不同特意的造了一组$hack$数据来卡自己:(第一行是序列长度,第二行是序列) 6 1 5 ...

  4. WPF PropertyChanged实现子属性通知

    今天用WPF的View绑定了ViewModel的一个属性类,结果在属性类的子属性修改时,没有通知到UI. 如有要显示一个学生信息,采用WPF MVVM的模式,则前端代码 <StackPanel& ...

  5. 【JavaScript基础】Js的定时器(你想看的原理也在哟)

    [JavaScript基础]Js的定时器(你想看的原理也在哟) 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 说明 本章是经历 ...

  6. python3.5 安装mysqlclient

    python 3.5 安装 mysqlclient 会失败 pip install mysqlclient 注意这里环境中只有python3.5 会出现一大堆红字 编译终止, error: comma ...

  7. hdu 1027 Ignatius and the Princess II(正、逆康托)

    题意: 给N和M. 输出1,2,...,N的第M大全排列. 思路: 将M逆康托,求出a1,a2,...aN. 看代码. 代码: int const MAXM=10000; int fac[15]; i ...

  8. PHP笔记3__简易计算器

    <?php header("Content-type: text/html; charset=utf-8"); error_reporting(E_ALL & ~E_ ...

  9. (一)FastDFS 高可用集群架构学习---简介

    1.什么是FastDFS FastDFS 是余庆老师用c语言编写的一筐开源的分布式文件系统,充分考虑了冗余备份,负载均衡,线性扩容等机制,并注重高可用.高性能等指标,使用FastDFS可以很容易搭建一 ...

  10. 跬步千里 —— 阿里云Redis bitfield命令加速记

    link:https://developer.aliyun.com/article/757841 在一次阿里云客户问题解决中,通过给Redis添加bitfield_ro命令,解决了Redis官方bit ...