linux基础知识-sar详解

这篇具有很好参考价值的文章主要介绍了linux基础知识-sar详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.前言

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

2.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 #修改定时任务,自定义收集信息的时间间隔

3.sar使用说明

我们还是先用man来看一下对应的文档说明:
image.png
我给稍微整理了一下形成一个导图,可以快速的了解其结构与详情:
linux基础知识-sar详解.png&originHeight=1744&originWidth=1305&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=202040&status=done&style=none&taskId=udc70a2e3-149e-418d-b35e-da3d1b4bfcd&title=)

3.1. sar语法:

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

3.2.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 —> 显示给定进程的状态

3.3. 示例

示例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
[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

4.用于排查性能常用的命令

CPU瓶颈: sar -u 和sar -q等
内存瓶颈:sar -B、sar -r、sar -W等
I/O瓶颈:sar -b、sar -u、sar -d 等文章来源地址https://www.toymoban.com/news/detail-495964.html

到了这里,关于linux基础知识-sar详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C++类和对象基础知识详解

    1.一切皆是对象。如下图: ·女人是一个对象 ·鞋子是一个对象 ·包包是一个对象 ·衣服是一个对象 ·裤子是一个对象 ·手链是一个对象 … 这里人这个对象,由鞋子、包包、衣服、 裤子、手链等对象组成。 3.每个对象都有: a)数据(描述对象的属性) b)函数(行为操作代码

    2023年04月12日
    浏览(43)
  • 一、网络编程之基础知识详解

    引言: 初学网络编程时会涉及到许多网络基础知识,这些知识点比较零碎,本文希望系统总结一次,以便在后续的学习和工作中能够快速查阅。 网络分层模型 OSI 七层模型 OSI 模型,也叫做七层模型, OSI 是 Open System Interconnection 的缩写,译为“开放式系统互联”。 OSI 模型是

    2024年02月09日
    浏览(57)
  • Node.js详解(一):基础知识

    Node.js是一个javascript运行环境。它让javascript可以开发后端程序,实现几乎其他后端语言实现的所有功能,可以与PHP、Java、Python、.NET、Ruby等后端语言平起平坐。 Node.js是基于V8引擎,V8是Google发布的开源JavaScript引擎,本身就是用于Chrome浏览器的js解释部分,但是Node.js 之父 Rya

    2024年02月07日
    浏览(43)
  • Linux底层基础知识

    汇编,C语言,C++可以通过不同的编译器,编译成机器码。而java只能由Java虚拟机识别。Java虚拟机可以看成一个操作系统,Java虚拟机是由汇编,C,Linux等编写而成的一个操作系统(面向os) 不同的芯片,底层的CISC指令集不同,所以其机器码有区别,因此汇编不能跨平台。特定

    2024年02月07日
    浏览(36)
  • Linux基础知识4

    Linux基础知识 适合有Linux基础的人群进行复习。 禁止转载! shell第一行内容格式?         #!/bin/sh,#!/bin/bash,#!/bin/csh,#!/bin/tcsh,#!/bin/ksh等 执行shell脚本的三种方式       (1)为shell脚本直接加上可执行权限再执行,如:                 chmod 755 ljh.sh       /

    2024年02月08日
    浏览(48)
  • Linux基础知识3

    Linux基础知识 适合有Linux基础的人群进行复习。 禁止转载! Linux系统下的3类用户和功能; 答:         root用户(或称根用户、超级用户):Linux的内置用户,权限最高,具有读、写、执行系统所有文件的权限,可以更改系统配置、管理用户、安装软件等操作。        

    2024年02月08日
    浏览(38)
  • Linux基础知识笔记

    记录linux基础知识,持续更新中… /dev/null 是一个特殊的设备文件,可以将数据重定向到这个文件中,从而实现将输出或错误信息丢弃的效果。在 Linux 系统中, /dev/null 被称为“黑洞”,因为所有写入它的数据都会被立即丢弃,无法恢复。 在 Shell 脚本中,可以使用 符号将输出

    2024年02月07日
    浏览(41)
  • Linux复习——基础知识

    作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。   座右铭:低头赶路,敬事如仪 个人主页: 网络豆的主页​​​​​ 1. 有关早期linux系统中 sysvin的init的7个级别描述正确的是(    )[选择1项] A. init 1 关机状态     B. init 2 字符界面多用户模式

    2024年02月15日
    浏览(50)
  • Linux Shell基础知识

    预计更新 1: 基础知识 简介和安装 基本命令 变量和环境变量 2: 流程控制 条件语句 循环语句 函数 3: 文件处理 文件读写 文件权限和所有权 文件搜索和替换 4: 网络和进程 网络通信 进程管理 信号处理 5: 文本处理 正则表达式 文本分析和处理 生成报告和日志 6: 用户界面 命令行

    2024年02月11日
    浏览(46)
  • linux基础知识学习记录

    计算机组成:计算机主要硬件和软件2部分组成。 计算机软硬件的概念:硬件是可以看得见的物理实体,软件是运行在硬件上不可见的程序。 计算机软硬件的关系:没有硬件,程序就不会存在;没有软件,硬件就是破铜烂铁。 计算机硬件的组成:CPU(中央处理器)、内存、硬盘

    2024年02月07日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包