前言:

Linux中的sar命令,全称是(System Activity Reporter系统活动情况报告),它是Linux下的系统运行状态监控工具,可以从多个方面对系统活动进行报告。

包括:网络收发包情况、文件读写情况、磁盘I/O、内存使用情况等。

堪称全能小王子,下面我们一起来看下sar命令的使用。

1.sar命令安装

笔者使用的是Ubuntu机器,安装比较简单

root@91230cc467cc:/usr/local/tomcat# apt-get install sar

在使用sar命令时经常会报错,如下所示:

root@93de58bae514:/proc/net# sar
Cannot open /var/log/sysstat/sa04: No such file or directory
Please check if data collecting is enabled

这时的处理方案如下:

# 1.修改/etc/default/sysstat权限
root@91230cc467cc:/usr/local/tomcat# chmod u+x /etc/default/sysstat# 2.修改/etc/default/sysstat内容,将ENABLED设置为true(原为false)
root@91230cc467cc:/usr/local/tomcat# vim /etc/default/sysstat # Default settings for /etc/init.d/sysstat, /etc/cron.d/sysstat
# and /etc/cron.daily/sysstat files
## Should sadc collect system activity informations? Valid values
# are "true" and "false". Please do not put other values, they
# will be overwritten by debconf!
ENABLED="true"# 3.重启sysstat
root@91230cc467cc:/usr/local/tomcat# /etc/init.d/sysstat restart

2.sar命令的那些参数

使用sar -help来展示选项信息

root@91230cc467cc:/usr/local/tomcat# sar -h
# 用法就是 sar [选项信息] [间隔时间 次数]
Usage: /usr/bin/sar [ options ] [ <interval> [ <count> ] ]
Main options and reports:-B Paging statistics # 分页统计信息-b    I/O and transfer rate statistics # I/O传输速率-d    Block devices statistics # 块设备情况-F  Filesystems statistics # 文件系统统计-H   Hugepages utilization statistics # 交换空间利用统计-I { <int> | SUM | ALL | XALL }Interrupts statistics # 中断信息统计-m { <keyword> [,...] | ALL }Power management statistics # 电源管理统计信息Keywords are:CPU CPU instantaneous clock frequencyFAN    Fans speedFREQ  CPU average clock frequencyIN   Voltage inputsTEMP  Devices temperatureUSB  USB devices plugged into the system-n { <keyword> [,...] | ALL }Network statistics # 网络信息统计Keywords are:DEV   Network interfaces # 网卡EDEV Network interfaces (errors)NFS  NFS clientNFSD  NFS serverSOCK  Sockets (v4) # 套接字IP    IP traffic  (v4) # IP流EIP   IP traffic  (v4) (errors)ICMP   ICMP traffic    (v4)EICMP   ICMP traffic    (v4) (errors)TCP    TCP traffic (v4) # TCP流ETCP TCP traffic (v4) (errors)UDP    UDP traffic (v4) # UDP流SOCK6    Sockets (v6)IP6 IP traffic  (v6)EIP6    IP traffic  (v6) (errors)ICMP6  ICMP traffic    (v6)EICMP6  ICMP traffic    (v6) (errors)UDP6   UDP traffic (v6)-q  Queue length and load average statistics # CPU负载信息统计-R  Memory statistics # 内存信息统计-r    Memory utilization statistics # 内存使用率信息统计-S Swap space utilization statistics # SWAP空间利用率统计-u [ ALL ] # CPU统计CPU utilization statistics-v   Kernel tables statistics # 内核表统计-W  Swapping statistics # 交换分区状态统计

下面我们来看些重点信息

3.网络信息查看(sar -n DEV)

查看网络接口信息

# 查看网卡流量信息,每3秒展示一次,无限循环,直到用户中断
root@e05fc0c9b15c:/# sar -n DEV 3
Linux 5.10.76-linuxkit (e05fc0c9b15c) 03/18/22 _aarch64_ (4 CPU)15:01:24        IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
15:01:27           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
15:01:27        tunl0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
15:01:27      ip6tnl0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
15:01:27         eth0   7097.33   3900.67    470.98    264.66      0.00      0.00      0.00      0.0415:01:27        IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
15:01:30           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
15:01:30        tunl0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
15:01:30      ip6tnl0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
15:01:30         eth0   5176.67   2786.00    343.73    189.47      0.00      0.00      0.00      0.03

就15:01:30 这行记录

rxpck/s(每秒接收的网络帧)为5176,txpck/s(每秒发送的网络帧)为2786,

rxkB/s(每秒接收的千字节数)为343,txkB/s(每秒发送的千字节数)为189

有关于输出项的具体含义我们可以通过man sar 找到-n,如下所示:

-n { keyword [,...] | ALL }Report network statistics.Possible keywords are DEV, EDEV, NFS, NFSD, SOCK, IP, EIP, ICMP, EICMP, TCP, ETCP, UDP, SOCK6, IP6, EIP6, ICMP6, EICMP6 and UDP6.With the DEV keyword, statistics from the network devices are reported.  The following values are displayed:IFACEName of the network interface for which statistics are reported.rxpck/sTotal number of packets received per second.txpck/sTotal number of packets transmitted per second.rxkB/sTotal number of kilobytes received per second.txkB/sTotal number of kilobytes transmitted per second.rxcmp/sNumber of compressed packets received per second (for cslip etc.).txcmp/sNumber of compressed packets transmitted per second.rxmcst/sNumber of multicast packets received per second.%ifutilUtilization percentage of the network interface. For half-duplex interfaces, utilization is calculated using the sum of rxkB/s and txkB/s asa percentage of the interface speed. For full-duplex, this is the greater of rxkB/S or txkB/s.

具体含义这里的英文说明已经很详细了,不再赘述

4.socket连接信息统计(sar -n SOCK)

root@e05fc0c9b15c:/# sar -n SOCK 2
Linux 5.10.76-linuxkit (e05fc0c9b15c)   04/04/22    _aarch64_   (4 CPU)04:35:10       totsck    tcpsck    udpsck    rawsck   ip-frag    tcp-tw
04:35:12           11         1         0         0         0         0
04:35:14           12         2         0         0         0         0
04:35:16           11         1         0         0         0         0
04:35:18           11         1         0         0         0         0
04:35:20           11         1         0         0         0         0
totsck 当前被使用的socket总数
tcpsck 当前被使用的TCP socket总数
udpsck 当前被使用的UDP socket总数
rawsck 当前处于RWA状态的socket总数
ip-frag 当前ip分配的数目
tcp-tw TCP套接字中处于TIME_WAIT状态的连接总数

5.磁盘使用情况(sar -d)

root@e05fc0c9b15c:/# sar -d 2
Linux 5.10.76-linuxkit (e05fc0c9b15c)   04/04/22    _aarch64_   (4 CPU)04:41:26          DEV       tps     rkB/s     wkB/s     dkB/s   areq-sz    aqu-sz     await     %util
04:41:28          vda      2.50     38.00      0.00      0.00     15.20      0.00      1.00      0.15
04:41:30          vda      0.50      2.00      0.00      0.00      4.00      0.00      0.00      0.05
04:41:32          vda      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
DEV 磁盘设备名称
tps 每秒I/O的传输总数
rkB/s 每秒读总数量(KB单位)
wkB/s 每秒写总数量(KB单位)
areq-sz 平均每次I/O操作的数据大小(KB单位)
aqu-sz 磁盘请求队列的平均长度
await 每次I/O请求的平均耗时(ms单位)
%util I/O请求占用的CPU时间百分比

6.查看内存情况(sar -r)

root@e05fc0c9b15c:/# sar -r 3
Linux 5.10.76-linuxkit (e05fc0c9b15c)   04/04/22    _aarch64_   (4 CPU)04:51:25    kbmemfree   kbavail kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
04:51:28       513764   1070688    659536     32.39    136096    609548   4497728    145.79    497816    842500         8
04:51:31       513732   1070656    659568     32.39    136096    609548   4497728    145.79    497816    843016         8

笔者个人还是更喜欢vmstat 和 pidstat 来展示

总结:

其他笔者不再赘述,在使用的时候主要还是想查看网络接口信息(sar -n DEV),有助于我们分析网卡包传入情况。

更多其他知识点可以参考:

linux 性能监控 sar命令_liyongbing1122的博客-CSDN博客_linux sar

Linux sar命令实战相关推荐

  1. linux sar 命令详解

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

  2. linux sar命令找不到,linux的sar命令未找到

    linux的sar命令未找到 一般的命令可以直接使用yum安裝, 但是sar和mpstat命令這兩個命令都是在sysstat包里, 網上的解決方法: rpm -ivh gd-2.0.32-23.2.i ...

  3. 性能监控之linux sar命令

    转自:http://blog.csdn.net/on_my_way20xx/article/details/8204963 前面已经介绍了 vmstat和top命令的解析及使用,下面我们来学习一个更重 ...

  4. linux sar命令 性能监控

    目录 1. CPU资源监控 2. inode.文件和其他内核表监控 3. 内存和交换空间监控 4. 内存分页监控 5. I/O和传送速率监控 6. 进程队列长度和平均负载状态监控 7. 系统交换活动信 ...

  5. linux中sar命令的选项很多,Linux sar 命令详解

    sar -n DEV #查看当天从零点到当前时间的网卡流量信息 sar -n DEV 1 10 #每秒显示一次,共显示10次 sar -n DEV -f /var/log/sa/saxx #查看xx日 ...

  6. linux dd命令实战

    1. linux dd读取写入磁盘速度 time有计时作用,dd用于复制,从if读出,写到of.if=/dev/zero不产生IO,因此可以用来测试纯写速度.同理of=/dev/null不产生IO,可 ...

  7. BigData Linux cut-sort-wc-uniq-tee-tr-split-awk-sed命令实战

    管道相关命令 1.1 cut cut:以某种方式按照文件的行进行分割 参数列表: -b 按字节选取 忽略多字节字符边界,除非也指定了 -n 标志 -c 按字符选取 -d 自定义分隔符,默认为制表符. ...

  8. Linux pidstat命令实战

    前言: 前文中我们了解了vmstat命令,其可以监控操作系统整体的CPU.内存.IO运行情况.但是如果我们相对某一个进程进行监控的话,vmstat就难免心有余而力不足.这时就需要本文主角登场,pids ...

  9. 10个重要的Linux ps命令实战

    Linux作为Unix的衍生操作系统,Linux内建有查看当前进程的工具ps.这个工具能在命令行中使用. PS 命令是什么 查看它的man手册可以看到,ps命令能够给出当前系统中进程的快照.它能捕获系 ...

最新文章

  1. 【采用】如何搭建反欺诈策略与模型
  2. C++学习笔记-----输出数据的另一种写法(std::copy)
  3. MySQL InnoDB 锁表与锁行
  4. linux下模糊搜索命令,linux命令当前文件夹下面模糊搜索文件
  5. 差分数组|小a的轰炸游戏-牛客317E
  6. 深度学习图像分类(十二):MobileNet系列(V1,V1,V3)
  7. BlackBerry黑莓7230/7290等常用的功能简介以及技巧分类【转载】
  8. 地址总线是单向还是双向_「计算机组成原理」:总线、地址总线、数据总线和控制总线...
  9. Android软键盘的删除键和activity返回冲突
  10. 北京邮电大学计算机学院考研调剂,北京邮电大学计算机学院2020考研调剂缺额信息...
  11. 吞噬星空java_(完)Java基础练习题:题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 - 菜鸟头头...
  12. Postman团队协作
  13. java自行车为什么被黑_谷歌自行车没有「愚人」,我来告诉你为什么
  14. keycloak+gatekeeper(python) 搭建简单流程
  15. 用Unity制作一个很火的找不同游戏,包括核心玩法与关卡编辑器工具的实现
  16. 58同城运维开发-BASE北京
  17. 老板驾驭经理人与元老之十诫
  18. remote_message
  19. 中国地质大学(北京) 研究生 数学课《机器学习》期末考试 考试范围+考试题目+参考答案 2022秋
  20. matlab plot画曲线/直线/椭圆

热门文章

  1. java生成二维码合成背景图
  2. async-profiler的使用与RocketMQ性能优化案例
  3. Python正则表达式一文详解+实例代码展示
  4. 数据库创建表以及增删改查
  5. 炫龙T50热键功能键
  6. 办公室文秘试题 计算机,办公室文秘实用计算机操作技巧
  7. 异步通信之IOCP详解
  8. 这些免费的IT自学网站,你用过几个
  9. 《码出高效》学习:TreeMap与红黑树
  10. 数据透视表 数据源引用无效_数据透视表源数据文章