Linux 基础之 sar 工具详解

文章目录

    • 一、前言
    • 二、配置说明
    • 三、使用说明
      • (一)sar语法
      • (二)sar选项
      • (三)示例
        • 示例1
        • 示例2
        • 示例3
        • 示例4
        • 示例5
        • 示例6
        • 示例7
        • 示例8
        • 示例9
        • 示例10
        • 其他示例11
        • 其他示例12
        • 用于排查性能常用的命令

一、前言

sar(System Activity Reporter系统活动情况报告)是目前 Linux 比较全的系统性能分析工具之一,可以从多方面对系统的活动进行报告 ,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状态、进程活动有IPC有关的活动等。

sar 还可以配置配置信息收集历史指标。

二、配置说明

sar 是 sysstat 软件包的一部分,如果系统没有安装的话,可以使用命令进行安装。

yum -y install sysstat #安装sar工具            

安装完成后,基本配置文件路径“/etc/sysconfig”下的“sysstat”文件。

默认的配置文件信息如下:

[root@iam ~]# cat /etc/sysconfig/sysstat            
# sysstat-10.1.5 configuration file.            
           
# How long to keep log files (in days). 将性能日志文件保留多长时间,默认值是28天            
# If value is greater than 28, then log files are kept in            
# multiple directories, one for each month.            
HISTORY=28             
           
# Compress (using gzip or bzip2) sa and sar files older than (in days): 确定sar文件在多少天后压缩文件,默认值为31天。           
COMPRESSAFTER=31             
           
# Parameters for the system activity data collector (see sadc manual page) 系统活动数据收集保存参数            
# which are used for the generation of log files.            
SADC_OPTIONS="-S DISK"            
           
# Compression program to use. 数据文件压缩方式默认是bzip2            
ZIP="bzip2"            

通过上面信息,我们可以看到默认值有收集数据保存时长,什么时候开始压缩,压缩方式以及保存方式等信息。这些信息可以根据系统性能监控指标的需求自定义进行修改。

另外收集数据的时间间隔可以通过命令进行查看修改。

[root@iam ~]# cat /etc/cron.d/sysstat   #查看定时任务            
# Run system activity accounting tool every 10 minutes            
*/10 * * * * root /usr/lib64/sa/sa1 1 1            
# Generate a daily summary of process accounting at 23:53            
53 23 * * * root /usr/lib64/sa/sa2 -A            
[root@iam ~]# vim /etc/cron.d/sysstat #修改定时任务,自定义收集信息的时间间隔        

三、使用说明

我们还是先用 man 来看一下对应的文档说明:
在这里插入图片描述

我给稍微整理了一下形成一个导图,可以快速的了解其结构与详情:
在这里插入图片描述

(一)sar语法

sar [options] [-A] [-o file] [[t] [n]]
  • options->选项
  • -A->显示所有的报告信息
  • -o file->file是文件路径及文件名,将命令结果以二进制格式存放在指定文件中
  • t->时间间隔
  • n->次数

(二)sar选项

  • -b —> I/O传输速率信息状态
  • -B —> 分布状况
  • -c —> 进程创建活动
  • -d —> 块设备状况
  • -e —> 设置显示报告的结果时间
  • -m —> 电源管理信息状况
  • -f —> 从指定文件提取报告
  • -I {<中断> | SUM | ALL | XALL —>} 中断信息状况
  • -m —> 电源管理信息状况
  • -n { <关键词> [,…] | ALL } —> 网络统计信息,关键词可以是:
    • DEV ->网卡
    • EDEV ->网卡(错误)
    • NFS ->NFS客户端
    • NFSD ->NFS服务器
    • SOCK ->Sockets(套接字)(v4)
    • IP ->IP流(v4)
    • EIP ->IP流(错误)(v4)
    • ICMP ->ICMP流(v4)
    • EICMP ->ICMP流(错误)(v4)
    • UDP ->UDP流(v4)
    • SOCK6 ->Sockets(套接字)(v6)
    • IP6 ->IP流(v6)
    • EIP6 ->IP流(错误)(v6)
    • ICMP6 ->ICMP流(v6)
    • EICMP6 ->ICMP流(错误)(v6)
    • UDP6 ->UDP流(v6)
  • -P —> 报告每个CPU的状态
  • -q —> 队列长度和平均负载
  • -r —> 内存利用率
  • -R —> 内存状态
  • -S —> 交换空间利用率
  • -u [ ALL ] —> CPU利用率
  • -v —> Kernel table状况
  • -w —> 任务创建与系统转换统计信息
  • -W —> 交换信息
  • -y —> TTY设备状态
  • -x —> 显示给定进程的状态

(三)示例

示例1

每2s采样一次,连续采样3次,报告I/O传输速率统计情况

命令及结果:

sar -b 2 3
[root@iam ~]# sar -b 2 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
03:45:48 PM       tps      rtps      wtps   bread/s   bwrtn/s            
03:45:50 PM      9.50      1.00      8.50     12.00   2382.00            
03:45:52 PM      5.50      0.00      5.50      0.00    119.00            
03:45:54 PM      7.50      0.00      7.50      0.00    108.50            
Average:         7.50      0.33      7.17      4.00    869.83            
[root@iam ~]#            

输出说明:

  • tps->每秒物理设备的I/O传输次数总量
  • rtps->每秒从物理设备读取的数据次数总量
  • wtps->每秒写入物理设备的数据次数总量
  • bread/s-> 每秒从设备读取的数据总量,以块为计量单位。块相当于扇区,因此大小为512字节
  • bwrth/s->每秒写入物理设备的块总数
示例2

查看系统swap分区的统计信息

命令及结果:

sar -W 1 3
[root@iam ~]# sar -W 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
08:18:24 PM  pswpin/s pswpout/s            
08:18:25 PM      0.00      0.00            
08:18:26 PM      0.00      0.00            
08:18:27 PM      0.00      0.00            
Average:         0.00      0.00            
[root@iam ~]#            

输出说明:

  • pswpin/s-> 每秒从交换分区到系统的交换页面(swap page)数量
  • pswpott/s-> 每秒从系统交换到swap的交换页面(swap page)的数量
示例3

内存分页统计状况

命令及结果:

sar -B 1 3
[root@iam ~]# sar -B 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
04:31:37 PM  pgpgin/s pgpgout/s   fault/s  majflt/s  pgfree/s pgscank/s pgscand/s pgsteal/s    %vmeff            
04:31:38 PM   4096.00    392.00   4419.00      0.00  21896.00   9004.00      0.00   8606.00     95.58            
04:31:39 PM    524.00    268.00   2875.00      1.00  21645.00   9011.00      0.00   8590.00     95.33            
04:31:40 PM   5724.00 128080.00  18738.00      2.00  26118.00   8993.00      0.00   8646.00     96.14            
Average:      3448.00  42913.33   8677.33      1.00  23219.67   9002.67      0.00   8614.00     95.68            
[root@iam ~]#        

输出说明:

  • pgpgpgin/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)的百分比
示例4

显示每个块设备的状态

命令及结果

sar -d 1 3
[root@iam ~]# sar -d 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
07:37:54 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util            
07:37:55 PM    dev8-0     97.00     16.00   1114.00     11.65      0.04      0.38      0.38      3.70            
07:37:55 PM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
07:37:55 PM  dev253-0     95.00      0.00   1114.00     11.73      0.00      0.03      0.03      0.30            
07:37:55 PM  dev253-1      2.00     16.00      0.00      8.00      0.03     17.00     17.00      3.40            
07:37:55 PM  dev253-2      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
           
07:37:55 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util            
07:37:56 PM    dev8-0    140.00   8200.00   1353.00     68.24      0.15      1.09      0.24      3.30            
07:37:56 PM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
07:37:56 PM  dev253-0    139.00   8192.00   1353.00     68.67      0.14      1.01      0.16      2.20            
07:37:56 PM  dev253-1      1.00      8.00      0.00      8.00      0.01     11.00     11.00      1.10            
07:37:56 PM  dev253-2      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
           
07:37:56 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util            
07:37:57 PM    dev8-0    150.00   8192.00   1305.00     63.31      0.08      0.54      0.09      1.30            
07:37:57 PM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
07:37:57 PM  dev253-0    150.00   8192.00   1305.00     63.31      0.08      0.54      0.09      1.40            
07:37:57 PM  dev253-1      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
07:37:57 PM  dev253-2      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:       dev8-0    129.00   5469.33   1257.33     52.14      0.09      0.70      0.21      2.77            
Average:      dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
Average:     dev253-0    128.00   5461.33   1257.33     52.49      0.07      0.59      0.10      1.30            
Average:     dev253-1      1.00      8.00      0.00      8.00      0.01     15.00     15.00      1.50            
Average:     dev253-2      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
You have new mail in /var/spool/mail/root            
[root@iam ~]#            
[root@iam ~]# sar -d -p 1 3             
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
07:40:41 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util            
07:40:42 PM       sda    121.00   6144.00   1046.00     59.42      5.03     29.98      5.55     67.10            
07:40:42 PM       sr0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
07:40:42 PM centos-root    124.00   8192.00   1061.00     74.62      5.03     29.26      5.41     67.10            
07:40:42 PM centos-swap      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
07:40:42 PM centos-home      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
           
07:40:42 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util            
07:40:43 PM       sda    133.00   2080.00   1151.00     24.29      0.28     12.62      1.11     14.80            
07:40:43 PM       sr0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
07:40:43 PM centos-root    129.00      0.00   1136.00      8.81      0.27     12.95      1.09     14.00            
07:40:43 PM centos-swap      4.00     32.00      0.00      8.00      0.03      8.00      2.00      0.80            
07:40:43 PM centos-home      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
           
07:40:43 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util            
07:40:44 PM       sda    141.00   8192.00   1517.00     68.86      0.53      3.78      0.51      7.20            
07:40:44 PM       sr0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
07:40:44 PM centos-root    141.00   8192.00   1517.00     68.86      0.53      3.78      0.52      7.30            
07:40:44 PM centos-swap      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
07:40:44 PM centos-home      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:          sda    131.67   5472.00   1238.00     50.96      1.95     14.78      2.26     29.70            
Average:          sr0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
Average:    centos-root    131.33   5461.33   1238.00     51.01      1.94     14.80      2.24     29.47            
Average:    centos-swap      1.33     10.67      0.00      8.00      0.01      8.00      2.00      0.27            
Average:    centos-home      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
[root@iam ~]#            

输出说明:

  • DEV-> 磁盘设备的名称,如果不加-p,会显示dev253-0类似的设备名称,因此加上-p显示的名称更直接
  • tps->每秒I/O的传输总数
  • rd_sec/s-> 每秒读取的扇区的总数
  • wr_sec/s-> 每秒写入的扇区的 总数
  • avgrq-sz-> 平均每次次磁盘I/O操作的数据大小(扇区)
  • avgqu-sz-> 磁盘请求队列的平均长度
  • await-> 从请求磁盘操作到系统完成处理,每次请求的平均消耗时间,包括请求队列等待时间,单位是毫秒(1秒等于1000毫秒),等于寻道时间+队列时间+服务时间
  • svctm-> I/O的服务处理时间,即不包括请求队列中的时间
  • %util ->I/O请求占用的CPU百分比,值越高,说明I/O越慢
示例5

报告每个CPU的状态

命令及结果:

sar -P [ALL] 1 3

sar -u 1 3

sar -p 1 3

当CPU是单核时,以上命令等价,当CPU是多核时,可以使用“-P”查看指定CPU使用情况,没有明确指出输出那个cpu使用情况时,默认是1,可以指定cpu查看状态,下标从0开始。当输入ALL表示输出所有的cpu状态。具体如下操作及显示:

[root@iam ~]# sar -P 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
07:53:55 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle            
07:53:58 PM       1     99.67      0.00      0.33      0.00      0.00      0.00            
07:54:01 PM       1     98.98      0.00      1.02      0.00      0.00      0.00            
07:54:04 PM       1    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:07 PM       1     99.31      0.00      0.69      0.00      0.00      0.00            
^C            
           
07:54:09 PM       1     99.30      0.00      0.70      0.00      0.00      0.00            
Average:          1     99.47      0.00      0.53      0.00      0.00      0.00            
[root@iam ~]# sar -P 0 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
07:54:17 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle            
07:54:18 PM       0    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:19 PM       0     98.02      0.00      1.98      0.00      0.00      0.00            
07:54:20 PM       0    100.00      0.00      0.00      0.00      0.00      0.00            
Average:          0     99.33      0.00      0.67      0.00      0.00      0.00            
[root@iam ~]# sar -P 1 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
07:54:26 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle            
07:54:27 PM       1    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:28 PM       1    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:29 PM       1    100.00      0.00      0.00      0.00      0.00      0.00            
Average:          1    100.00      0.00      0.00      0.00      0.00      0.00            
[root@iam ~]# sar -P 2 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
07:54:32 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle            
07:54:33 PM       2     99.00      0.00      1.00      0.00      0.00      0.00            
07:54:34 PM       2     98.02      0.00      1.98      0.00      0.00      0.00            
07:54:35 PM       2    100.00      0.00      0.00      0.00      0.00      0.00            
Average:          2     99.00      0.00      1.00      0.00      0.00      0.00            
[root@iam ~]# sar -P 3 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
07:54:39 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle            
07:54:40 PM       3     98.04      0.00      1.96      0.00      0.00      0.00            
07:54:41 PM       3    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:42 PM       3     99.00      0.00      1.00      0.00      0.00      0.00            
Average:          3     99.00      0.00      1.00      0.00      0.00      0.00            
[root@iam ~]# sar -P ALL 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
07:54:46 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle            
07:54:47 PM     all     99.38      0.00      0.62      0.00      0.00      0.00            
07:54:47 PM       0    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:47 PM       1    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:47 PM       2     99.00      0.00      1.00      0.00      0.00      0.00            
07:54:47 PM       3    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:47 PM       4     99.01      0.00      0.99      0.00      0.00      0.00            
07:54:47 PM       5     98.02      0.00      1.98      0.00      0.00      0.00            
07:54:47 PM       6    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:47 PM       7    100.00      0.00      0.00      0.00      0.00      0.00            
           
07:54:47 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle            
07:54:48 PM     all     99.62      0.00      0.38      0.00      0.00      0.00            
07:54:48 PM       0     99.00      0.00      1.00      0.00      0.00      0.00            
07:54:48 PM       1    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:48 PM       2    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:48 PM       3    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:48 PM       4    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:48 PM       5    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:48 PM       6    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:48 PM       7    100.00      0.00      0.00      0.00      0.00      0.00            
           
07:54:48 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle            
07:54:49 PM     all     99.50      0.00      0.37      0.00      0.00      0.12            
07:54:49 PM       0    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:49 PM       1     99.01      0.00      0.99      0.00      0.00      0.00            
07:54:49 PM       2    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:49 PM       3     98.02      0.00      1.98      0.00      0.00      0.00            
07:54:49 PM       4    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:49 PM       5     99.00      0.00      0.00      0.00      0.00      1.00            
07:54:49 PM       6    100.00      0.00      0.00      0.00      0.00      0.00            
07:54:49 PM       7    100.00      0.00      0.00      0.00      0.00      0.00            
           
Average:        CPU     %user     %nice   %system   %iowait    %steal     %idle            
Average:        all     99.50      0.00      0.46      0.00      0.00      0.04            
Average:          0     99.67      0.00      0.33      0.00      0.00      0.00            
Average:          1     99.67      0.00      0.33      0.00      0.00      0.00            
Average:          2     99.67      0.00      0.33      0.00      0.00      0.00            
Average:          3     99.34      0.00      0.66      0.00      0.00      0.00            
Average:          4     99.67      0.00      0.33      0.00      0.00      0.00            
Average:          5     99.00      0.00      0.67      0.00      0.00      0.33            
Average:          6    100.00      0.00      0.00      0.00      0.00      0.00            
Average:          7    100.00      0.00      0.00      0.00      0.00      0.00            
[root@iam ~]#            
[root@iam ~]# sar -u 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
08:01:57 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle            
08:01:58 PM     all     99.63      0.00      0.37      0.00      0.00      0.00            
08:01:59 PM     all     99.75      0.00      0.25      0.00      0.00      0.00            
08:02:00 PM     all     99.38      0.00      0.62      0.00      0.00      0.00            
Average:        all     99.58      0.00      0.42      0.00      0.00      0.00            
[root@iam ~]# sar -u 1 3 |grep Average            
Average:        all     99.50      0.00      0.46      0.00      0.00      0.04            
[root@iam ~]# sar -p 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
08:02:48 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle            
08:02:49 PM     all     99.38      0.00      0.62      0.00      0.00      0.00            
08:02:50 PM     all     99.38      0.00      0.62      0.00      0.00      0.00            
08:02:51 PM     all     99.13      0.00      0.62      0.00      0.00      0.25            
Average:        all     99.29      0.00      0.62      0.00      0.00      0.08            
[root@iam ~]#            

输出说明:

  • %user ->用户空间的CPU使用
  • %nice ->改变过优先级的进程的CPU使用率
  • %system ->内核空间的CPU使用率
  • %iowait ->CPU等待IO的百分比
  • %steal ->虚拟机的虚拟机CPU使用的CPU百分比
  • %idle ->空闲的CPU百分比

补充命令lsblk:查看块设备信息

[root@iam ~]# lsblk            
NAME            MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT            
sda               8:0    0   200G  0 disk            
├─sda1            8:1    0     1G  0 part /boot            
└─sda2            8:2    0   199G  0 part            
  ├─centos-root 253:0    0 141.1G  0 lvm  /            
  ├─centos-swap 253:1    0   7.9G  0 lvm  [SWAP]            
  └─centos-home 253:2    0    50G  0 lvm  /home            
sr0              11:0    1  10.3G  0 rom        
示例6

进程队列长度和平均负载状态监控
命令及结果:

sar -q 1 3
[root@iam ~]# sar -q 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
08:13:55 PM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked            
08:13:56 PM        10      1646     14.81     14.96     14.50         0            
08:13:57 PM        12      1646     14.81     14.96     14.50         0            
08:13:58 PM        16      1646     14.81     14.96     14.50         0            
Average:           13      1646     14.81     14.96     14.50         0            
[root@iam ~]# sar -q 1 3 |grep Average            
Average:           14      1647     15.06     15.01     14.52         0                

输出说明:

  • runq-sz-> 运行队列的长度(等待运行的进程数,每核的CP不能超过3个)
  • plist-sz ->进程列表中的进程(processes)和线程数(threads)的数量
  • ldavg-1-> 最后1分钟的CPU平均负载,即将多核CPU过去一分钟的负载相加再除以核心数得出的平均值,5分钟和15分钟以此类推
  • ldavg-5-> 最后5分钟的CPU平均负载
  • ldavg-15-> 最后15分钟的CPU平均负载
  • 每间隔1秒钟统计一次总共统计三次,然后获取平均值:sar -q 1 3 | grep Average
示例7

进程、inode、文件和锁表状态

命令及结果:

sar -v 1 3
[root@iam ~]# sar -v 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
08:20:59 PM dentunusd   file-nr  inode-nr    pty-nr            
08:21:00 PM     62377      8128     43935        16            
08:21:01 PM     62406      8128     43943        16            
08:21:02 PM     62429      8128     43942        16            
Average:        62404      8128     43940        16            

输入说明:

dentunusd ->在缓冲目录条目中没有使用的条目数量

file-nr -> 被系统使用的文件句柄数量

inode-nr -> 已经使用的索引数量

pty-nr -> 使用的pty数量

示例8

报告显示任务创建和系统切换活动

命令及结果:

sar -w 1 3
[root@iam ~]# sar -w 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
08:31:16 PM    proc/s   cswch/s            
08:31:17 PM      4.00   4906.00            
08:31:18 PM      7.00   4365.00            
08:31:19 PM     32.67   5612.87            
Average:        14.62   4963.46            
           

输出说明:

  • proc/s -> 每秒创建的任务总数
  • cswch/s -> 每秒上下文切换的总数
示例9

显示内存使用率

命令及结果:

sar -r 1 3
[root@iam ~]# sar -r 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
08:38:47 PM kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty            
08:38:48 PM    383492  15882476     97.64      1068   5492368  27685344    112.89   5152456  10027096       512            
08:38:49 PM    382264  15883704     97.65      1068   5492596  27685856    112.90   5152924  10027288       524            
08:38:50 PM    377936  15888032     97.68      1068   5496476  27685852    112.90   5153032  10031188       528            
Average:       381231  15884737     97.66      1068   5493813  27685684    112.89   5152804  10028524       521            
[root@iam ~]# sar -r 1 3|grep Average            
Average:       230108  16035860     98.59      1068   5290705  27674264    112.85   5407708   9939421       396            
           

输出说明:

  • kbmemfree -> 空闲的物理内存大小
  • kbmemused -> 使用中的物理内存大小
  • %memused ->物理内存使用率
  • kbbuffers-> 内核中作为缓冲区使用的物理内存大小,kbbuffers和kbcached:这两个值就是free命令中的buffer和cache.
  • kbcached ->缓存的文件大小
  • kbcommit -> 保证当前系统正常运行所需要的最小内存,即为了确保内存不溢出而需要的最少内存(物理内存+Swap分区)
  • %commit-> 这个值是kbcommit与内存总量(物理内存+swap分区)的一个百分比的值
  • kbactive -> 活动内存量(以KB为单位)(最近使用过且通常不会被回收,除非绝对必要)
  • kbinact ->以KB为单位的非活动内存量(较早以前使用过。它更适合被回收以用于其他目的)
  • kbdirty -> 等待写回磁盘的内存量(KB)
  • 每间隔1秒钟统计一次总共统计三次,然后获取平均值:sar -r 1 3 | grep Average
示例10

网络统计

命令及结果:

sar -n DEV 1 3
[root@iam ~]# sar -n DEV 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
09:00:45 PM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s            
09:00:46 PM      tun0      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
09:00:46 PM    ens192    535.00    576.00     60.91   2322.23      0.00      0.00      0.00            
09:00:46 PM        lo     30.00     30.00      4.32      4.32      0.00      0.00      0.00            
09:00:46 PM veth430ffcb      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
09:00:46 PM   docker0      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
           
09:00:46 PM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s            
09:00:47 PM      tun0      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
09:00:47 PM    ens192    539.60    548.51     58.34   2263.20      0.00      0.00      0.00            
09:00:47 PM        lo      2.97      2.97      0.18      0.18      0.00      0.00      0.00            
09:00:47 PM veth430ffcb      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
09:00:47 PM   docker0      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
           
09:00:47 PM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s            
09:00:48 PM      tun0      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
09:00:48 PM    ens192    565.00    601.00     65.85   2511.41      0.00      0.00      0.00            
09:00:48 PM        lo      4.00      4.00      0.20      0.20      0.00      0.00      0.00            
09:00:48 PM veth430ffcb      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
09:00:48 PM   docker0      0.00      0.00      0.00      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:         tun0      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
Average:       ens192    546.51    575.08     61.69   2365.27      0.00      0.00      0.00            
Average:           lo     12.29     12.29      1.56      1.56      0.00      0.00      0.00            
Average:    veth430ffcb      0.00      0.00      0.00      0.00      0.00      0.00      0.00            
Average:      docker0      0.00      0.00      0.00      0.00      0.00      0.00      0.00            

输出说明:

- IFACE -> 本地网卡接口的名称
- rxpck/s -> 每秒钟接受的数据包
- txpck/s -> 每秒钟发送的数据库
- rxKB/S -> 每秒钟接受的数据包大小,单位为KB
- txKB/S -> 每秒钟发送的数据包大小,单位为KB
- rxcmp/s -> 每秒钟接受的压缩数据包
- txcmp/s -> 每秒钟发送的压缩包
- rxmcst/s -> 每秒钟接收的多播数据包    
其他示例11

可以把上面的输出的报告信息保存到一个二进制文件里,把二进制文件通过sadf命令转换成数据库可读的格式如csv的格式文件,方便出图标统计。

如:

输出统计的数据信息

命令

sar -o cpu.log -u 1 3
[root@iam ~]# sar -o cpu.log -u 1 3            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
09:26:01 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle            
09:26:02 PM     all     99.50      0.00      0.37      0.00      0.00      0.12            
09:26:03 PM     all     99.00      0.00      0.50      0.00      0.00      0.50            
09:26:04 PM     all     99.38      0.00      0.62      0.00      0.00      0.00            
Average:        all     99.29      0.00      0.50      0.00      0.00      0.21            

```bash
[root@iam ~]# sadf -d cpu.log            
hostname;interval;timestamp;CPU;%user;%nice;%system;%iowait;%steal;%idle            
iam.zt.chiansec.local;1;2023-03-24 13:24:27 UTC;-1;99.63;0.00;0.37;0.00;0.00;0.00            
iam.zt.chiansec.local;1;2023-03-24 13:24:28 UTC;-1;99.62;0.00;0.38;0.00;0.00;0.00            
iam.zt.chiansec.local;1;2023-03-24 13:24:29 UTC;-1;99.25;0.00;0.62;0.00;0.00;0.12            
iam.zt.chiansec.local;92;2023-03-24 13:26:01 UTC;-1;99.43;0.00;0.47;0.00;0.00;0.09            
iam.zt.chiansec.local;1;2023-03-24 13:26:02 UTC;-1;99.50;0.00;0.37;0.00;0.00;0.12            
iam.zt.chiansec.local;1;2023-03-24 13:26:03 UTC;-1;99.00;0.00;0.50;0.00;0.00;0.50            
iam.zt.chiansec.local;1;2023-03-24 13:26:04 UTC;-1;99.38;0.00;0.62;0.00;0.00;0.00            
[root@iam ~]# sadf -d cpu.log |sed 's/;/,/g' >cpu.csv            
[root@iam ~]#            
其他示例12

从数据文件读取信息

命令:

sar -f cpu.log
[root@iam ~]# sadf -d cpu.log |sed 's/;/,/g' >cpu.csv            
[root@iam ~]# sar -f cpu.log            
Linux 3.10.0-1062.el7.x86_64 (iam.zt.chiansec.local)     03/24/2023     _x86_64_    (8 CPU)            
           
09:24:26 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle            
09:24:27 PM     all     99.63      0.00      0.37      0.00      0.00      0.00            
09:24:28 PM     all     99.62      0.00      0.38      0.00      0.00      0.00            
09:24:29 PM     all     99.25      0.00      0.62      0.00      0.00      0.12            
09:26:01 PM     all     99.43      0.00      0.47      0.00      0.00      0.09            
09:26:02 PM     all     99.50      0.00      0.37      0.00      0.00      0.12            
09:26:03 PM     all     99.00      0.00      0.50      0.00      0.00      0.50            
09:26:04 PM     all     99.38      0.00      0.62      0.00      0.00      0.00            
Average:        all     99.43      0.00      0.47      0.00      0.00      0.10            
           
用于排查性能常用的命令
CPU瓶颈:sar -u 和sar -q等
内存瓶颈:sar -B、sar -r、sar -W等
I/O瓶颈:sar -b、sar -u、sar -d

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/422563.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【无标题】TMGM官网平台切尔西足球俱乐部合作

TMGM作为一家在三大洲均设有办事处的行业领导者&#xff0c;TMGM 被视为可靠的差价合约交易提供商&#xff0c;其重点是监管合规、技术创新与他联系➕&#x1f6f0;️TMGM818卓越的客户服务。 切尔西足球俱乐部在亚太地区拥有庞大的球迷群体&#xff0c;并在该地区建立了多种亚…

Java中==与equals()的区别

关于“对比”类型的面试题,建议回答时包括: 多个对比项有什么相同/相似之处 多个对比项的区别 在应用中应该如何选取 可能的话,加入一些扩展。 变量与对象是2个不同的概念 Object a = new Object(); 以上代码中的a就是变量,在内存中实际存在的数据就是对象。 所有引…

五大跨平台桌面应用开发框架:Electron、Tauri、Flutter等

hello&#xff0c;我是贝格前端工场&#xff0c;本次介绍跨平台开发的框架&#xff0c;欢迎大家评论、点赞。 一、什么是跨平台桌面应用开发框架 跨平台桌面应用开发框架是一种工具或框架&#xff0c;它允许开发者使用一种统一的代码库或语言来创建能够在多个操作系统上运行的…

使用 frp 实现 windows 远程

前提条件&#xff1a; 拥有一台公网 ip 的服务器&#xff1b; 被远程控制的 windows 系统为专业版&#xff08;家庭版的其它方式没有尝试过&#xff09;&#xff1b; frp 下载包及使用说明 frp release 包的下载网址&#xff1a;https://github.com/fatedier/frp/releases 中…

人工智能基础——模型部分:模型介绍、模型训练和模型微调 !!

文章目录 前言 一、什么是模型 二、什么是模型训练 三、什么是模型微调 前言 本文将从什么是模型&#xff1f;什么是模型训练&#xff1f;什么是模型微调&#xff1f;三个问题&#xff0c;来展开介绍人工智能基础的模型部分。 模型族谱 一、什么是模型 模型是一个函数&#x…

set和multiset

1. set基本概念 简介&#xff1a; 所有元素都会在插入时自动被排序 本质&#xff1a; set/multiset属于关联式容器&#xff0c;底层结构是用二叉树实现。 set和multiset区别&#xff1a; set不允许容器中有重复的元素 multiset允许容器中有重复的元素 2. set构造和赋值 功能描述…

MySql安全加固:配置不同用户不同账号禁止使用旧密码禁止MySql进程管理员权限

MySql安全加固&#xff1a;配置不同用户不同账号&禁止使用旧密码&禁止MySql进程管理员权限 1.1 检查是否配置不同用户不同账号1.2 检查是否禁止使用旧密码1.3 禁止MySql进程管理员权限 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496…

uview2中上传文件和若依前后端分离配合的代码

uview2中的上传文件需要配合着自己后端的上传的代码 uview2 代码&#xff1a; uploadFilePromise(url) {return new Promise((resolve, reject) > {// 后续自己封装let a uni.uploadFile({//自己的请求路径url: that.$baseURL /uploadAvater, //上传的文件filePath: tha…

4.1.CVAT——目标检测的标注详细步骤

文章目录 1. 进入任务1. 创建任务2. 已创建的task3. 进入标注界面 2. 选择标注类型2.1 选择标注类型2.2 进行标注2.3 遮挡 2.快捷键3.导出标注结果 1. 进入任务 登录后会看到如下图界面&#xff0c;CVAT的标注最小单位是Task&#xff0c;每个Task为一个标注任务。点击Task按钮…

数据安全无忧,SQL Server 2014数据库定时备份解密

一、为什么要执行数据库定时备份 在SQL Server数据库中&#xff0c;完整备份和差异备份是常见的备份策略组合。它们的目的是提供数据的备份和恢复能力&#xff0c;以确保数据的可靠性和可恢复性。 完整备份&#xff08;Full Backup&#xff09; 完整备份是对整个数据库进行备份…

为什么要在业务系统中引入大宽表?

在高度系统化驱动的业务中&#xff0c;查看业务报表已经是一个很常见的需求了。在分工非常明确的大型企业里&#xff0c;往往有专门的数据分析团队 BI 或者数据开发团队&#xff0c;他们能够胜任此类需求&#xff08;但也未必是轻松的&#xff0c;或者说高效的&#xff09;。 …

‘conda‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件

如果你在运行 conda 命令时收到了 ‘conda’ 不是内部或外部命令&#xff0c;也不是可运行的程序或批处理文件。 的错误消息&#xff0c;这可能意味着 Anaconda 并没有正确地添加到你的系统路径中。 1.你可以尝试手动添加 Anaconda 到系统路径中。以下是在 Windows 系统上添加…

前端按钮动画

效果示例 代码示例 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevic…

自测-2 素数对猜想

文章预览&#xff1a; 题目算法 题目 算法 本题用python写不能用一般的算法去求会超时&#xff0c;应该采用欧拉素数筛选法去求&#xff0c;算法复杂度为O&#xff08;n&#xff09;比其他的算法优秀的多&#xff0c; 算法思想: &#xff08;1&#xff09;我们安排一个数组或者…

AJAX 学习笔记(Day1)

「写在前面」 本文为黑马程序员 AJAX 教程的学习笔记。本着自己学习、分享他人的态度&#xff0c;分享学习笔记&#xff0c;希望能对大家有所帮助。 目录 0 课程介绍 1 AJAX 入门 1.1 AJAX 概念和 axios 使用 1.2 认识 URL 1.3 URL 查询参数 1.4 常用请求方法和数据提交 1.5 HT…

华为笔记本自带windows11如何改为win10

目录 一、前言 二、遇到问题 三、问题解决 一、前言 新购买的华为笔记本电脑自带windows11系统&#xff0c;虽然是正版系统&#xff0c;但还是希望能重新装Windows10版本。一是我已经习惯此系统&#xff0c;二是该系统上运行的开发工具比较稳定。 二、遇到问题 说干就干&…

idea,pycharm等的ai assistant已成功激活,可以提高写代码的效率了

ai assistant成功激活了&#xff0c;可以提高写代码的效率了 https://web.52shizhan.cn/activate https://web.52shizhan.cn/activity/ai-assistant 你不妨也试试 激活成功后如图

【玩转pandas系列】pandas数据结构—DataFrame

文章目录 前言一、DataFrame创建1.1 字典创建1.2 NumPy二维数组创建 二、DataFrame切片2.1 行切片2.2 列切片2.3 行列切片 三、DataFrame运算3.1 DataFrame和标量的运算3.2 DataFrame之间的运算3.3 Series和DataFrame之间的运算 四、DataFrame多层次索引4.1 多层次索引构造1.隐…

Django 官网项目 四

内容&#xff1a; 利用HTTP的post方法&#xff0c;更改数据并显示。 创建detail.html文件&#xff0c;来创建POST内容 修改应用的视图文件views.py&#xff0c;vote方法 修改应用的视图文件views.py&#xff0c;results方法。 创建results.html文件。 结果&#xff1a;单…

【NR 定位】3GPP NR Positioning 5G定位标准解读(一)

1. 3GPP规划下的5G技术演进 根据3GPP的规划&#xff0c;5G技术演进被分为两个阶段&#xff0c;Rel-15/16/17这三个版本称为5G演进的第一阶段&#xff0c;之后的Rel-18/19/20这三个版本称为5G演进的第二轮创新&#xff0c;也就是5G Advanced。 在5G演进的第一阶段中&#xff0…