sar 命令

2023-11-15

NAME
       sar - Collect, report, or save system activity information.

SYNOPSIS
       sar  [  -A  ]  [ -b ] [ -B ] [ -C ] [ -d ] [ -h ] [ -i interval ] [ -m ] [ -p ] [ -q ] [ -r ] [ -R ] [ -S ] [ -t ] [ -u [ ALL ] ] [ -v ] [ -V ] [ -w ] [ -W ] [ -y ] [ -j { ID |
       LABEL | PATH | UUID | ... } ] [ -n { keyword [,...] | ALL } ] [ -I { int [,...] | SUM | ALL | XALL } ] [ -P { cpu [,...] | ALL } ] [ -o [ filename ] |  -f  [  filename  ]  ]  [
       --legacy ] [ -s [ hh:mm:ss ] ] [ -e [ hh:mm:ss ] ] [ interval [ count ] ]
sar(System Activity Reporter)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等。

参数:
  • -A 汇总所有的报告
  • -B 报告分页的使用情况
  • -b 显示I/O 和传送速率的统计信息
  • -d 报告磁盘的使用情况
  • -e:设置显示报告的结束时间
  • -f:从指定文件提取报告
  • -g 报告串口的使用情况
  • -i:设状态信息刷新的间隔时间
  • -n 报告网络状况
  • -q 报告队列长度和系统平均负载
  • -R 报告内存使用情况
  • -r 报告内存利用率统计
  • -u 报告CPU的利用率
  • -v 报告进程、i节点、文件和锁表状态
  • -w 报告系统交换活动状况
  • -y 报告TTY设备活动状况
 cpu资源监控
sar -u

  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 的值持续低 , 则系统的CPU 处理能力相对较低, 表明系统中最需要解决的资源是CPU

  inode、文件和其他内核表监控
  sar -v

  

  dentunused : 目录高速缓存中未被使用的条目数量
  file-nr : 文件句柄 (file handle)的使用数量
  inode-nr: 索引节点句柄(inode handle) 的使用数量
  pty-nr: 使用的pty 数量

  内存和交换空间监控

  sar  -r

  

  kbmemfree:这个值和free命令中的free值基本一致,所以它不包括buffer和cache的空间.
  kbmemused:这个值和free命令中的used值基本一致,所以它包括buffer和cache的空间.
  %memused:这个值是kbmemused和内存总量(不包括swap)的一个百分比.
  kbbuffers和kbcached:这两个值就是free命令中的buffer和cache.
  kbcommit:当前工作负载所需的内存量(以KB为单位),即为了确保不溢出而需要的内存(RAM+swap).
  %commit:这个值是kbcommit与内存总量(包括swap)的一个百分比.

  内存分页监控

  sar -B

  

  pgpgin/s:表示每秒从磁盘或SWAP置换到内存的字节数(KB)
  pgpgout/s:表示每秒从内存置换到磁盘或SWAP的字节数(KB)
  fault/s:每秒钟系统产生的缺页数,即主缺页与次缺页之和(major + minor)
  majflt/s:每秒钟产生的主缺页数.
  pgfree/s:每秒被放入空闲队列中的页个数
  pgscank/s:每秒被kswapd扫描的页个数
  pgscand/s:每秒直接被扫描的页个数
  pgsteal/s:每秒钟从cache中被清除来满足内存需要的页个数
  %vmeff:每秒清除的页(pgsteal)占总扫描页(pgscank+pgscand)的百分比

  i/o 传输速率监控

  sar -b

    

  tps:每秒钟物理设备的 I/O 传输总量
  rtps:每秒钟从物理设备读入的数据总量
  wtps:每秒钟向物理设备写入的数据总量
  bread/s:每秒钟从物理设备读入的数据量,单位为 块/s
  bwrtn/s:每秒钟向物理设备写入的数据量,单位为 块/s

  进程队列长度和平均负载状态监控

  sar -q

 

  runq-sz:运行队列的长度(等待运行的进程数)
  plist-sz:进程列表中进程(processes)和线程(threads)的数量
  ldavg-1:最后1分钟的系统平均负载(System load average)
  ldavg-5:过去5分钟的系统平均负载
  ldavg-15:过去15分钟的系统平均负载

  系统交换活动信息监控

  sar -W

    

  pswpin/s:每秒系统换入的交换页面(swap page)数量
  pswpout/s:每秒系统换出的交换页面(swap page)数量

  设备使用情况监控

  sar -d

  

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

  sar分析网络流量

  sar -n DEV

  

  sar 提供六种不同的语法选项来显示网络信息。-n选项使用6个不同的开关:DEV | EDEV | NFS | NFSD | SOCK | ALL 。DEV显示网络接口信息,EDEV显示关于网络错误的统计数据,NFS统计活动的NFS客户端的信息,NFSD统计NFS服务器的信息,SOCK显示套接字信息,ALL显示所有5个开关。它们可以单独或者一起使用。

  IFACE:LAN接口,网络设备的名称
  rxpck/s:每秒钟接收的数据包
  txpck/s:每秒钟发送的数据包
  rxbyt/s:每秒钟接收的字节数
  txbyt/s:每秒钟发送的字节数
  rxcmp/s:每秒钟接收的压缩数据包
  txcmp/s:每秒钟发送的压缩数据包
  rxmcst/s:每秒钟接收的多播数据包

  sar -n EDEV

  

  IFACE:LAN接口网络设备的名称
  rxerr/s:每秒钟接收的坏数据包 
  txerr/s:每秒钟发送的坏数据包
  coll/s:每秒冲突数
  rxdrop/s:因为缓冲充满,每秒钟丢弃的已接收数据包数
  txdrop/s:因为缓冲充满,每秒钟丢弃的已发送数据包数
  txcarr/s:发送数据包时,每秒载波错误数
  rxfram/s:每秒接收数据包的帧对齐错误数
  rxfifo/s:接收的数据包每秒FIFO过速的错误数
  txfifo/s:发送的数据包每秒FIFO过速的错误数

要判断系统瓶颈问题,有时需几个 sar 命令选项结合起来:
   怀疑CPU存在瓶颈,可用 sar -u 和 sar -q 等来查看
   怀疑内存存在瓶颈,可用 sar -B、sar -r 和 sar -W 等来查看
   怀疑I/O存在瓶颈,可用 sar -b、sar -u 和 sar -d 等来查看

 

转载于:https://www.cnblogs.com/imcati/p/11523594.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

sar 命令 的相关文章

  • window系统消失的c盘,实际占用与显示占用相差好多G

    问题 C盘一直显示的红色提醒 我c盘实际占用的空间只有33 1GB 而我的c盘总共大小是59 9GB 显示的剩余大小是1 35GB 也就是说我占用了58 11 和c盘的总文件大小相差了25GB 那么消失的25GB去了哪里 我百度过这个问题
  • Java课程设计之学习成绩管理系统

    package System import java awt import java awt event import java io import javax swing import javax swing table Abstract
  • 6.OS运行机制(补充)

    中断
  • texlive支持中文的简单方法

    1 确保tex文件的编码方式是UTF 8 2 在文档开始处添加一行命令即可 即 usepackage UTF8 ctex 如下所示 documentclass article usepackage UTF8 ctex begin artic
  • Win11微软账号登录不上?Win11登录Microsoft账户出错的解决方法

    Win11微软账号登录不上 近期有部分Win11用户反映在登录微软账号会出现一直转圈 无法登录的情况 这样导致部分功能都不能正常使用了 为此十分令人头疼 那么对于这一情况 有没有什么方法可以有效的解决呢 下面小编教给大家操作方法 大家可以去
  • 掉电无法启动数据库问题解决

    由于突然掉电 造成客户在windows平台上10 2 0 1数据库无法驱动 以下是具体解决步骤 一 定位故障问题 1 启动数据库 查看错误 SQL gt startup ora 01113 file 1 needs media recove
  • Linux网络安全-Zabbix入门(一)

    一 基本概念 1 监控目的 运行情况 提前发现问题 2 监控资源类别 公开 tcp udp 端口 私有 cpu 磁盘 监控一切需要监控的东西 只要能够想到 能够用命令实现的都能用来监控 如果想远程管理服务器就有远程管理卡 比如Dell id
  • mapengpeng1999@163.com 操作系统4~处理机调度

    处理机调度 1 三级调度体系 1 处理机调度主要是对处理机运行时间进行分配 即 按照一定算法或策略 将处理机运行时间分配给各个并发进程 同时尽量提高处理机的使用效率 2 现代操作系统中 按调度所实现的功能分3种类型 高级调度 中级调度和低级
  • pycharm内存不足时如何修改设置?

    Help gt Find Action gt type VM Options gt Click Edit Custom VM Options Pycharm 2016 2 will open the appropriate vmoption
  • 虚拟机管理程序、虚拟化和云: 深入剖析 PowerVM 虚拟机管理程序

    预备知识 Power 是没有限制的虚拟化 一些企业打算依靠 PowerVM 虚拟化将多个工作负载整合到较少系统上 从而提高服务器利用率 降低成本 Power VM 为基于 Power Systems 平台的高级 RAS 功能和领先性能为 A
  • Linux 磁盘与文件系统管理(鸟哥私房菜)

    本文来自 http vbird dic ksu edu tw linux basic 0230filesystem php 第八章 Linux 磁盘与文件系统管理 系统管理员很重要的任务之一就是管理好自己的磁盘文件系统 每个分割槽不可太大也
  • LWIP在STM32上的移植

    本文做记录摘抄 加上自己的体会 文章标题 STM32使用LWIP实现DHCP客户端 http www cnblogs com dengxiaojun p 4379545 html 该文章介绍了几点 LWIP源码的内容 关键点 1 inclu
  • Linux,Network manager 导致节点异常重启

    推断是Network manager 导致的 原因待查今天在VmWare的虚拟机上装了个测试RAC 又遇到了一个摸不到头绪的问题CRS装好后 一旦登陆图形界面 节点就重启 事情就有这么巧不登陆图形界面 观察了1个小时没问题 一旦登陆后 立刻
  • 操作系统 段页式存储管理

    一 引入 分页系统是以页面作为内存分配的基本单位 能有效地提高内存利用率 但信息共享等不方便 分段系统是以段作为内存分配的基本单位 它能够更好地满足用户多方面的需要 信息共享 动态链接等 但采用分区方式管理物理内存 仍然存在碎片问题 段页式
  • 通过源码包*.src.rpm定制开发rpm

    为什么80 的码农都做不了架构师 gt gt gt 1 基本流程 1 下载 安装相应的src rpm包 wget xxx src rpm rpm ivh xxx src rpm 这里的 安装 是指把xxx src rpm中的tar gz p
  • Linux 内核中的 Device Mapper 机制

    Linux 内核中的 Device Mapper 机制 尹 洋 在读博士生 尹洋 中科院计算所国家高性能计算机工程技术研究中心的在读博士生 主要从事服务部署和存储资源管理以及Linux块设备一级的开发和研究工作 简介 本文结合具体代码对 L
  • Anaconda 安装 Python 库(MySQLdb)的方法-(转)

    安装python库的过程中 最重要的地方就是版本需要兼容 其中操作系统为64位 Python为2 X 64位 下载安装文件的时候也要注意版本匹配 其中文件名中包含的cp27表示CPython 2 7版本 cp34表示CPython 3 4
  • linux 使用systemctl 启动服务报错: Error: No space left on device

    By default Linux only allocates 8192 watches for inotify which is ridiculously low And when it runs out the error is als
  • 《OSPF和IS-IS详解》一1.7 独立且平等

    本节书摘来自异步社区 OSPF和IS IS详解 一书中的第1章 第1 7节 作者 美 Jeff Doyle 更多章节内容可以访问云栖社区 异步社区 公众号查看 1 7 独立且平等 OSPF和IS IS详解与TCP IP相比 OSI协议对各国
  • I/O设备模型

    I O设备模型 绝大部分的嵌入式系统都包括一些I O Input Outut 输入 输出 设备 例如仪器上的数据显示屏 工业设备上的串口通信 数据采集设备上用于保存数据的Flash或SD卡 以及网络设备的以太网接口等 I O设备模型框架 R

随机推荐

  • Node.js Buffer的简单使用

    Node js 目前支持的字符编码包括 ascii 仅支持 7 位 ASCII 数据 如果设置去掉高位的话 这种编码是非常快的 utf8 多字节编码的 Unicode 字符 许多网页和其他文档格式都使用 UTF 8 utf16le 2 或
  • JVM 垃圾回收

    JVM 垃圾回收 写在前面 本节常见面试题 问题答案在文中都有提到 如何判断对象是否死亡 两种方法 简单的介绍一下强引用 软引用 弱引用 虚引用 虚引用与软引用和弱引用的区别 使用软引用能带来的好处 如何判断一个常量是废弃常量 如何判断一个
  • Linux基线检查( 一)

    什么是基线 即安全基线配置 诸如操作系统 中间件和数据库的一个整体配置 这个版本中各项配置都符合安全方面的标准 比如在系统安装后需要按安全基线标准 将新机器中各项配置调整到一个安全 高效 合理的数值 风险分类 系统 等保三级 CentOS
  • linux 普通用户 Cannot create VM thread. Out of system resources.

    在linux系统下开发 使用普通用户进行应用部署 出现JVM内存问题如下 Error occurred during initialization of VM Cannot create VM thread Out of system re
  • Basic Level 1023 组个最小数 (20分)

    题目 给定数字 0 9 各若干个 你可以以任意顺序排列这些数字 但必须全部使用 目标是使得最后得到的数尽可能小 注意 0 不能做首位 例如 给定两个 0 两个 1 三个 5 一个 8 我们得到的最小的数就是 10015558 现给定数字 请
  • Python学习笔记第六十四天(Matplotlib 网格线)

    Python学习笔记第六十四天 Matplotlib 网格线 普通网格线 样式网格线 后记 Matplotlib 网格线 我们可以使用 pyplot 中的 grid 方法来设置图表中的网格线 grid 方法语法格式如下 matplotlib
  • 系统架构设计师(第二版)学习笔记----信息系统基础

    原文链接 系统架构设计师 第二版 学习笔记 信息系统基础 文章目录 一 信息系统概述 1 1 信息系统的5个基本功能 1 2 信息系统发展阶段 1 3 初始阶段的主要特点 1 4 传播阶段的主要特点 1 5 控制阶段的主要特点 1 6 集成
  • lock_guard和unique_lock

    锁 锁用来在多线程访问同一个资源时防止数据竞险 保证数据的一致性访问 多线程本来就是为了提高效率和响应速度 但锁的使用又限制了多线程的并行执行 这会降低效率 但为了保证数据正确 不得不使用锁 它们就是这样纠缠 本文主要讨论 c 11 中的两
  • 网络安全工程师的职责 103.219.28.X

    网络安全工程师是专门从事网络安全防护 攻击和事故处理等工作的技术人员 其主要职责包括 评估和分析网络漏洞和威胁情况 制定网络安全策略和方案 开发和实施安全解决方案 监控和维护网络安全系统 应对网络攻击和事故等 他们需要掌握网络安全技术 网络
  • DateTime关于时区的学习

    一 时区的概念 首先来了解时区的概念 为了解决世界不同各地在时间上的差异 人们定义了时区 时区是地球上的区域使用同一个时间定义 人们将时区分为24个 它们是中时区 零时区 东1 12区 西1 12区 每个时区横跨经度15度 时间正好是1小时
  • SQL Server临时表

    创建临时表 方法一 create table 临时表名 字段1 约束条件 字段2 约束条件 create table 临时表名 字段1 约束条件 字段2 约束条件 方法二 select into 临时表名 from 你的表 select i
  • 【JAVA设计模式】之桥接模式(BridgePattern)

    桥接模式的作用是将两样东西连接起来 比如桥梁把河的两岸连接起来 桥接模式把 类的功能层次结构 和 类的实现层次结构 连接起来 类的层次结构 类的功能层次 父类通过定义抽象方法来定义接口API 类的实现层次 子类通过实现具体方法来实现接口AP
  • FP64、FP32、FP16、FP8简介

    目录 1 单精度浮点数FP32的表示 2 半精度浮点数FP16的表示 3 双精度浮点数FP64的表示 4 FP8 5 写在最后 1 单精度浮点数FP32的表示 浮点数由三部分组成 符号位 指数部分 尾数部分 以单精度浮点数为例 如图所示 符
  • 好多粉使用百度OCPC api提交后如何手动选择有效咨询回传?

    推广每天会有复制 虽然绝大部分是正常的数据 但也有可能有的是同行刷的 有的是没有添加成功的数据 如果不处理 会造成无效数据上传 只能投放的AI可能就要被某些别有用心的人玩坏了 所以我们为解决这个痛点 开发了手动回传功能 并且系统自动帮你标识
  • VS2019现有项目添加Qt界面

    目录 Qt安装教程 Qt下载 Qt安装 VS Qt插件 配置Qt插件 配置包含目录及链接器 添加QT界面 添加UI界面 配置文件属性 编译UI文件 添加 h和 cpp文件 简单运行测试 双击ui文件打开Qt Designer闪退问题 与VS
  • c++实现霍夫曼编码

    c 实现霍夫曼编码 计算信源的熵 平均码长 编码效率 冗余度与压缩比 考虑到指针可能对新手不太友好 这里用的是vector容器 用法类似数组 可以动态扩容 存储树形结构 大致原理就是n号结点的左右子树分别是2n和2n 1号结点 Huffma
  • XMPP客户端库Smack 4.1.4版官方开发文档之五

    本文转载自 博客主页 http blog csdn net chszs 五 名单Roster和在线状态Presence 名单可以让你跟踪其他用户是否在线 而且名单可以让你把用户组织到群组 比如朋友群或工作群 而其它的即时通信IM系统则把名单
  • 7个高频出现的面试题

    收集了2022年所有学生的面试题后 我整理出了7个高频出现的面试题 一起来看看 高频问题1 请自我介绍下 高频问题2 请介绍下最近做过的项目 高频问题3 请介绍下你印象深刻的bug 高频问题4 Fiddler工具怎么使用的 高频问题5 说一
  • 判断是否为数字的两种办法

    今天在写angular的ts中碰到一个问题 就是需要判断用户id是否是number类型还是uuid 在这里我采用了两种办法 1 使用typeof 判断是什么类型 if typeof res userInfo id number alert
  • sar 命令

    NAME sar Collect report or save system activity information SYNOPSIS sar A b B C d h i interval m p q r R S t u ALL v V