Linux性能监控工具汇总

news2025/2/21 18:40:27

文章目录

  • 前言
  • 一、性能监控工具介绍
    • 1.概念介绍
    • 2.常用组合方式
    • 3.对比
  • 二、sar工具
    • 1.sar安装
    • 2.sar工具参数
    • 3.sar工具使用示例
      • 3.1.每两秒采集一次cpu使用情况,总计采集2次,然后输出CPU使用情况的统计信息
      • 3.2.磁盘IO使用情况统计
      • 3.3.内存使用情况统计
      • 3.4.网卡流量使用情况统计
  • 三、vmstat工具
    • 1.vmstat工具常用参数示例
    • 2.vmstat工具使用示例
      • 2.1.每 2 秒查看一次服务器状态,持续2次
  • 四、iostat工具
    • 1.iostat工具常用参数
    • 2.iostat工具使用示例
      • 2.1.显示所有设备负载情况
      • 2.2.查看设备使用率(%util)
  • 五、tsar工具
    • 1.tsar工具介绍及安装
    • 2.tsar工具参数解释
    • 3.tsar常用命令示例
      • 3.1.监控系统的cpu
      • 3.2.监控内存使用情况
      • 3.3.查看指定时间的CPU平均负载


前言

在现代 IT 环境中,运维人员扮演着确保服务器稳定性和性能的关键角色。面对复杂的系统架构和不断变化的负载需求,如何有效监控服务器的各项性能指标成为我们日常工作的重中之重。磁盘读写速度、I/O 活动、CPU 使用率、内存消耗、网络流量及系统负载等,都是影响服务器健康状态的重要参数。幸运的是,Linux 提供了一系列强大而实用的工具,如 vmstat、sar、iostat 和 tsar,它们不仅能够实时监测这些关键指标,还能帮助我们深入洞察系统的运行细节,快速定位和解决潜在问题。让我们一同探讨这些工具如何成为我们运维工作中的得力助手。


一、性能监控工具介绍

1.概念介绍

1.常用系统命令
vmstat、sar、iostat、tsar

2.主要方向:
	sar主要用于收集并统计系统资源的信息,包括CPU、IO、内存、网卡流量等
	
	vmstat命令主要是对操作系统的虚拟内存、进程、IO读写、CPU活动等整体情况进行统计。但是它不能对某个进程进行深入分析。
	相比top,通过vmstat可以看到整个机器的 CPU,内存,IO的使用情况,而不是单单看到各个进程的CPU使用率和内存使用率。

	iostat用于输出CPU和磁盘I/O相关的统计信息 
	
	tsar工具是对sar工具的一个整合,源于阿里巴巴一款自研工具

2.常用组合方式

	• 用vmstat、sar、iostat检测是否是CPU瓶颈
	• 用free、vmstat检测是否是内存瓶颈
	• 用iostat检测是否是磁盘I/O瓶颈

3.对比

以下是 vmstatiostatsartsar 工具的关键点对比表格:

工具主要功能适用场景关键指标备注
vmstat虚拟内存、进程和 CPU 状态统计监控内存和 CPU 使用,定位内存压力和 CPU 饱和问题- r: 等待 CPU 的进程数
- b: 阻塞的进程数
- swpd: 交换区使用的内存量
- free: 空闲内存量
- si, so: 交换操作
- us, sy, id, wa: CPU 使用状态
快速查看系统健康,适合内存和 CPU 性能分析
iostatCPU 和 I/O 性能统计监控磁盘 I/O 性能,查找磁盘 I/O 性能瓶颈- tps: 每秒 I/O 请求数
- kB_read/s, kB_wrtn/s: 磁盘读写速率
- iowait: I/O 等待时间
%util: 磁盘使用率
专注于磁盘 I/O 性能,适合磁盘瓶颈分析
sar系统活动报告,广泛涵盖 CPU、内存、I/O长期监控,历史数据分析,生成报告- %cpu: CPU 使用率
- memory: 内存使用情况
- swap: 交换区使用
- i/o: 磁盘 I/O 活动
- network: 网络流量
支持历史数据,适合长期监控和问题回溯
tsar系统活动报告,支持模块扩展多模块监控,定制化报告,实时监控- cpu: CPU 使用状态
- io: 磁盘 I/O 状态
- mem: 内存使用情况
- net: 网络流量
- load: 系统负载
灵活性强,适合自定义监控和报告生成

二、sar工具

1.sar安装

命令如下(示例):

#sysstat中包含了sar、vmstat、iostat
[root@ops ~]# yum -y install sysstat

#命令格式
sar [options] [-A] [-o file] t [n]
其中
t 代表采样间隔,n为采样次数,默认值是1
-o file:表示将命令结果以二进制格式存放在文件中,file 是文件名。
options 为命令行选项,如下表所示

2.sar工具参数

参数如下(示例):

选项描述
-A所有报告的总和
-a文件读写情况
-b显示I/O和传送速率的统计信息
-c输出进程统计信息,每秒创建的进程数
-d输出每一个块设备的活动信息
-r输出内存和交换空间的统计信息
-u输出CPU使用情况的统计信息
-v输出inode、文件和其他内核表的统计信息
-R输出内存页面的统计信息
-y终端设备活动情况
-w输出系统交换活动信息
-n显示网络使用情况,-n后接关键词”DEV”可显示eth0、eth1等网卡的信息

3.sar工具使用示例

3.1.每两秒采集一次cpu使用情况,总计采集2次,然后输出CPU使用情况的统计信息

[root@ops ~]# sar -u 2 5
Linux 4.19.90-24.4.v2101.ky10.x86_64 (ops.jdicity.local) 	02/19/2025 	_x86_64_	(1 CPU)

10:27:42 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle
10:27:44 PM     all      0.00      0.00      0.50      0.00      0.00     99.50
10:27:46 PM     all      0.00      0.00      1.00      0.00      0.00     99.00
Average:        all      0.60      0.00      0.60      0.00      0.00     98.80

输出说明:
	CPU: all 表示统计信息为所有 CPU 的平均值。
	%user: 显示在用户态级别(application)运行使用 CPU 总时间的百分比。
	%nice: 显示在用户级别,用于nice操作,所占用 CPU 总时间的百分比。
	%system: 在内核态级别(kernel)运行所使用 CPU 总时间的百分比。
	%iowait: 显示用于等待I/O操作占用 CPU 总时间的百分比。
	%steal: 管理程序(hypervisor)为另一个虚拟进程提供服务而等待虚拟 CPU 的百分比。
	%idle: 显示 CPU 空闲时间占用 CPU 总时间的百分比。

注意事项:
	1. 若 %iowait 的值过高,表示硬盘存在I/O瓶颈
	2. 若 %idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量
	3. 若 %idle 的值持续低于1,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU

3.2.磁盘IO使用情况统计

[root@ops ~]# sar -d -p 1 1
Linux 4.19.90-24.4.v2101.ky10.x86_64 (ops.jdicity.local) 	02/19/2025 	_x86_64_	(1 CPU)

10:33:31 PM       DEV       tps     rkB/s     wkB/s     dkB/s   areq-sz    aqu-sz     await     %util
10:33:32 PM       sr0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:33:32 PM       sdb      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:33:32 PM       sda      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:33:32 PM klas-root      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:33:32 PM klas-swap      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

Average:          DEV       tps     rkB/s     wkB/s     dkB/s   areq-sz    aqu-sz     await     %util
Average:          sr0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:          sdb      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:          sda      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:    klas-root      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:    klas-swap      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

输出说明:
	tps: 每秒 I/O 操作次数(Transactions per second)。这是设备在每秒钟内完成的读写请求次数。该值越大,表明磁盘的 I/O 活动越频繁。
	rkB/s: 每秒读取的数据量(Read kilobytes per second)。它显示了每秒从磁盘读取的字节数,单位为千字节(KB)。
	wkB/s: 每秒写入的数据量(Write kilobytes per second)。它显示了每秒向磁盘写入的字节数,单位为千字节(KB)。
	dkB/s: 每秒磁盘活动量(Disk kilobytes per second)。表示磁盘的总 I/O 活动量(读取 + 写入)。
	areq-sz: 平均请求大小(Average request size)。它是每次磁盘 I/O 请求的平均大小,单位为字节。
	aqu-sz: 平均队列大小(Average queue size)。它表示磁盘 I/O 队列中平均排队等待的请求数。
	await: 平均等待时间(Average wait time)。它表示磁盘 I/O 请求的平均响应时间(包括等待时间和实际执行时间),单位为毫秒(ms)。
	%util: 磁盘使用率(Disk utilization)。它表示磁盘设备忙碌的时间百分比,即磁盘的 I/O 使用率。如果值接近 100%,表示磁盘几乎处于满负荷状态

3.3.内存使用情况统计

[root@ops ~]# sar -r 1 2
Linux 4.19.90-24.4.v2101.ky10.x86_64 (ops.jdicity.local) 	02/19/2025 	_x86_64_	(1 CPU)

10:35:29 PM kbmemfree   kbavail kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10:35:30 PM    165804    636800    205852     21.10      1664    493664    752220     77.10    308236    304276        28
10:35:31 PM    165744    636740    205912     21.11      1664    493664    752220     77.10    308236    304276        28
Average:       165774    636770    205882     21.10      1664    493664    752220     77.10    308236    304276        28

输出说明:
	kbmemfree 空闲物理内存
	kbmemused 已使用物理内存
	%memused 已使用内存占总内存百分比
	kbbuffers Buffer Cache大小
	kbcached Page Cache大小
	kbcommit 应用程序当前使用内存大小
	%commit 应用程序使用内存百分比

3.4.网卡流量使用情况统计

[root@ops ~]# sar -n DEV 1 1
Linux 4.19.90-24.4.v2101.ky10.x86_64 (ops.jdicity.local) 	02/19/2025 	_x86_64_	(1 CPU)

10:42:19 PM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
10:42:20 PM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:42:20 PM     ens33      2.97      2.97      0.22      0.31      0.00      0.00      0.00      0.00
10:42:20 PM   docker0      0.00      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   %ifutil
Average:           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:        ens33      2.97      2.97      0.22      0.31      0.00      0.00      0.00      0.00
Average:      docker0      0.00      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: 每秒钟接收的多播数据包

三、vmstat工具

1.vmstat工具常用参数示例

参数含义解释
-a, --active显示活动/非活动内存显示内存中被使用的和没有被使用(空闲)的部分。
-f, --forks显示自系统启动以来的进程创建数量显示从系统启动开始,创建的子进程(fork)的数量。
-m, --slabs显示内核的 Slab 缓存信息显示内核缓存的详细信息(用于管理内存的小块)。
-n, --one-header只显示一次标题行在显示统计信息时,标题只显示一次,而不是每次刷新时都显示。
-s, --stats显示事件计数器统计信息显示系统事件(如上下文切换、硬件中断、软中断等)发生的次数。
-d, --disk显示磁盘相关统计信息显示磁盘的使用情况(如读写次数、IO等待等)。
-D, --disk-sum汇总磁盘统计数据汇总并显示磁盘的整体统计信息,而不是单独显示每个磁盘的统计。
-p, --partition <dev>显示特定磁盘分区的统计信息显示指定磁盘分区(如 /dev/sda1)的统计信息。
-S, --unit <char>设置输出的单位类型定义输出的单位,例如可以选择 k(千字节)、M(兆字节)等。
-w, --wide扩展输出宽度显示更宽的输出格式,适合查看更详细的信息。
-t, --timestamp显示时间戳显示每行数据前加上时间戳,以便知道数据的具体时间。
-h, --help显示帮助信息显示 vmstat 命令的使用帮助。
-V, --version显示版本信息显示 vmstat 命令的版本号。

2.vmstat工具使用示例

2.1.每 2 秒查看一次服务器状态,持续2次

[root@ops ~]# vmstat 2 2
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 163636   1664 535692    0    0    95    33   73  185  3  1 95  1  0
 0  0      0 163576   1664 535692    0    0     0    26   61  120  0  1 100  0  0
输出解释:
procs:
  r 表示运行和等待CPU时间片的进程数,这个值如果长期大于系统CPU个数,说明CPU不足。
  b 表示等待资源的进程数,比如正在等待I/O、或者内存交换等。
memory:
  swpd 虚拟内存使用量。即切换到内存交换区的内存数量。如果大于0,表示机器物理内存不足。
  free 空闲物理内存
  buff 作为buff使用的内存
  cache 作为cache使用的内存
swap:
  si  每秒从磁盘读入虚拟内存的大小,如果这个值大于0,表示物理内存不够或者内存泄露了,要查找耗内存进程解决掉。
  so  每秒虚拟内存写入磁盘的大小,如果这个值大于0,同上。  一般情况下,si、so的值都为0,如果si、so的值长期不为0,则表示内存不足。
 io:
  bi  块设备每秒接收的块数量,这里的块设备是指系统上所有的磁盘和其他块设备,默认块大小是1024byte
  bo  块设备每秒发送的块数量  设置的bi+bo参考值为1000,如果超过1000,而且wa值较大,则表示系统磁盘IO有问题,应该考虑提高磁盘的读写性能。
system:
  in 每秒CPU的中断次数,包括时间中断。
  cs 每秒上下文切换次数  这两个值越大,内核消耗的CPU就越多
cpu:
  us 用户进程消耗的CPU时间百分比,us的值比较高时,说明用户进程消耗的cpu时间多,但是如果长期大于50%,就需要考虑优化程序或算法
  sy 内核进程消耗的CPU时间百分比,sy值如果太高,说明内核消耗CPU资源很多,例如是IO操作频繁。
  id CPU处于空闲状态的时间百分比。
  wa io等待所占用的时间百分比,wa值越高,说明IO等待越严重,根据经验,wa的参考值为20%,如果wa超过20%,说明IO等待严重,引起IO等待的     原因可能是磁盘大量随机读写造成的,也可能是磁盘或者磁盘控制器的带宽瓶颈造成的(主要是块操作)

重点参数 r,b,swpd,free,buff,cache,si,so,bi,bo

四、iostat工具

1.iostat工具常用参数

参数含义
-c只显示系统CPU统计信息,即单独输出avg-cpu结果,不包括device结果
-d单独输出Device结果,不包括cpu结果
-k/-m输出结果以kB/mB为单位,而不是以扇区数为单位
-x输出更详细的io设备统计信息
interval/count每次输出间隔时间,count表示输出次数,不带count表示循环输出

2.iostat工具使用示例

2.1.显示所有设备负载情况

[root@ops ~]# iostat 
Linux 4.19.90-24.4.v2101.ky10.x86_64 (ops.jdicity.local) 	02/19/2025 	_x86_64_	(1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           2.45    0.15    1.16    0.45    0.00   95.78

Device             tps    kB_read/s    kB_wrtn/s    kB_dscd/s    kB_read    kB_wrtn    kB_dscd
dm-0              1.79        69.74        24.92         0.00     405754     144991          0
dm-1              0.02         0.36         0.00         0.00       2088          0          0
sda               1.98        71.75        25.27         0.00     417441     147039          0
sdb               0.40         0.92         0.43         0.00       5357       2526          0
scd0              0.00         0.18         0.00         0.00       1046          0          0

avg-cpu属性值说明:
	%user: CPU处在用户模式下的时间百分比。
	%nice: CPU处在带NICE值的用户模式下的时间百分比。
	%system: CPU处在系统模式下的时间百分比。
	%iowait: CPU等待输入输出完成时间的百分比。
	%steal: 管理程序维护另一个虚拟处理器时,虚拟CPU的无意识等待时间百分比。
	%idle: CPU空闲时间百分比。
	
注意:
	如果%iowait的值超过50%,或者明显大于%system、%user以及%idle,表示IO可能存在问题
	如果%idle值高,表示CPU较空闲
	如果%idle值高但系统响应慢时,可能是CPU等待分配内存,应加大内存容量。
	如果%idle值持续低于cpu核数,表明CPU处理能力相对较低,系统中最需要解决的资源是CPU。
	
Device: 各磁盘设备的IO统计信息。各列含义如下:
	tps: 每秒 I/O 操作数(Transactions Per Second)。表示设备每秒钟进行的读写操作次数。
	kB_read/s: 每秒读取的数据量,单位是千字节(KB/s)。
	kB_wrtn/s: 每秒写入的数据量,单位是千字节(KB/s)。
	kB_dscd/s: 每秒丢弃的数据量,单位是千字节(KB/s),通常与磁盘操作错误相关。
	kB_read: 从设备读取的总字节数(自系统启动以来,单位是千字节)。
	kB_wrtn: 向设备写入的总字节数(自系统启动以来,单位是千字节)。
	kB_dscd: 自系统启动以来丢弃的字节数。

2.2.查看设备使用率(%util)

[root@ops ~]# iostat -d -x -k 1 1
Linux 4.19.90-24.4.v2101.ky10.x86_64 (ops.jdicity.local) 	02/19/2025 	_x86_64_	(1 CPU)

Device            r/s     rkB/s   rrqm/s  %rrqm r_await rareq-sz     w/s     wkB/s   wrqm/s  %wrqm w_await wareq-sz     d/s     dkB/s   drqm/s  %drqm d_await dareq-sz  aqu-sz  %util
sda              1.48     69.49     0.00   0.13   18.53    46.95    0.44     24.51     0.19  29.80    1.91    55.56    0.00      0.00     0.00   0.00    0.00     0.00    0.03   0.86
sdb              0.38      0.89     0.00   0.00    1.22     2.37    0.01      0.42     0.00   7.69    6.20    42.11    0.00      0.00     0.00   0.00    0.00     0.00    0.00   0.05

说明:
	Device: 磁盘设备名称,如 sda、sdb 等。
	r/s: 每秒读取的请求次数(reads per second),表示每秒从设备读取的 I/O 请求次数。
	rkB/s: 每秒读取的千字节数(read kilobytes per second),表示设备每秒读取的数据量(单位:KB/s)。
	rrqm/s: 每秒合并的读取请求数(read requests merged per second),表示系统每秒合并的读取请求数量。
	%rrqm: 合并读取请求的百分比,表示合并的读取请求占总读取请求的百分比。
	r_await: 读取请求的平均等待时间(read await),单位为毫秒,表示从发起读取请求到完成读取操作的平均等待时间。
	rareq-sz: 读取请求的平均大小(read average request size),单位为千字节,表示每个读取请求的平均大小。
	w/s: 每秒写入的请求次数(writes per second),表示每秒向设备写入的 I/O 请求次数。
	wkB/s: 每秒写入的千字节数(write kilobytes per second),表示设备每秒写入的数据量(单位:KB/s)。
	wrqm/s: 每秒合并的写入请求数(write requests merged per second),表示系统每秒合并的写入请求数量。
	%wrqm: 合并写入请求的百分比,表示合并的写入请求占总写入请求的百分比。
	w_await: 写入请求的平均等待时间(write await),单位为毫秒,表示从发起写入请求到完成写入操作的平均等待时间。
	wareq-sz: 写入请求的平均大小(write average request size),单位为千字节,表示每个写入请求的平均大小。
	d/s: 每秒丢弃的请求次数(discard requests per second),表示每秒丢弃的 I/O 请求次数。
	dkB/s: 每秒丢弃的数据量(discard kilobytes per second),表示设备每秒丢弃的数据量(单位:KB/s)。
	drqm/s: 每秒合并的丢弃请求数(discard requests merged per second),表示系统每秒合并的丢弃请求数量。
	%drqm: 合并丢弃请求的百分比,表示合并的丢弃请求占总丢弃请求的百分比。
	d_await: 丢弃请求的平均等待时间(discard await),单位为毫秒,表示从发起丢弃请求到完成丢弃操作的平均等待时间。
	dareq-sz: 丢弃请求的平均大小(discard average request size),单位为千字节,表示每个丢弃请求的平均大小。
	aqu-sz: I/O 队列的平均深度(average queue size),表示当前 I/O 队列中等待处理的请求数量的平均值。
	%util: 采用周期内用于IO操作的时间比率,即IO队列非空的时间比率,,一般该值超过80%表示该磁盘可能处于繁忙状态。,即一秒中有百分之多少的时间用于 I/O,如果%util接近100%,说明产生的I/O请求太多,I/O系统已经满负荷
idle小于70% IO压力就较大了,一般读取速度有较多的wait。

总结:
	%util 和 r_await / w_await 是两个最直接反映磁盘 I/O 性能的指标。如果发现磁盘的利用率接近 100% 或等待时间较长,那就需要特别关注这些磁盘。

五、tsar工具

1.tsar工具介绍及安装

tsar是阿里巴巴自己开发的一个采集工具(类似于sar工具),主要用来收集服务器的系统信息(如cpu,io,mem,tcp等),
以及应用数据(如squid haproxy nginx等)。收集到的数据存储在磁盘上,可以随时查询历史信息,输出方式灵活多样,
另外支持将数据存储到mysql中,也可以将数据发送到报警服务器。

tsar在展示数据时,可以指定模块,并且可以对多条信息的数据进行merge输出,
带--live参数可以输出秒级的实时信息。
tsar可以通过编写模块轻松扩展,这使得它成为一个功能强大且多功能的报告工具。
tsar的三种运行模式:

    print模式,仅仅输出指定的模块信息,默认显示最近一天的

    live模式,是输出当前信息,可以精确到秒级

    cron模式,此一般是crontab定时执行,每一分钟采集一次所有配置的模块信息,并将数据写入原始文件,在cron运行的时候 会判断是否配置输出到db或者监控,如果配置则将相应格式的数据输出到对应接口

安装tsar工具

[root@ops ~]# wget -O tsar.zip https://github.com/alibaba/tsar/archive/master.zip --no-check-certificate
[root@ops ~]# unzip tsar.zip
[root@ops ~]# cd tsar-master/
[root@ops tsar-master]# make
[root@ops tsar-master]# make install

文件目录解释

	 /etc/tsar/tsar.conf     这是tsar的主要配置文件;
	 /etc/cron.d/tsar        用于每分钟运行tsar收集信息;
	 /etc/logrotate.d/tsar   将每个月轮询tsar的日志文件;
	 /usr/local/tsar/modules 是所有模块库(* .so)所在的目录;
	 /usr/local/man/man8/    帮助文件

2.tsar工具参数解释

 [root@ops ~]# tsar -h
 Usage: tsar [options]
 Options:
    -check        查看最后一次的采集数据
    --check/-C     查看最后一次tsar的提醒信息,如:tsar --check/ tsar --check--cpu--io
    --cron/-c     使用crond模式来进行tsar监控
    --interval/-i 指明tsar的间隔时间,默认单位分钟,带上--live参数则单位是秒 
    --list/-L     列出启用的模块
    --live/-l     查看实时数据
    --file/-f     指定输入文件
    --ndays/-n     指定过去的数据天数,默认1天
    --date/-d     指定日期,YYYYMMDD或者n代表n天前
    --detail/-D   能够指定查看主要字段还是模块的所有字段
    --spec/-s     指定字段,tsar –cpu -ssys,util
 	--item/-I     显示指定项的数据,通常用于显示特定磁盘或网络设备的详细数据
 Modules Enabled:
    --cpu              列出cpu相关的监控计数
    --mem              物理内存的使用情况
    --swap            虚拟内存的使用情况
    --tcp              TCP 协议 IPV4的使用情况
    --udp              UDP 协议 IPV4的使用情况
    --traffic          网络传出的使用情况
    --io              Linux IO的情况
    --pcsw            进程和上下文切换
    --partition        磁盘使用情况
    --tcpx            TCP 连接相关的数据参数
    --load            系统负载情况

3.tsar常用命令示例

3.1.监控系统的cpu

Time           -----------------------cpu---------------------- 
Time             user     sys    wait    hirq    sirq    util   
20/02/25-20:50   0.89    0.40    0.01    0.18    0.14    1.62   
20/02/25-20:55   0.84    0.42    0.00    0.19    0.15    1.60   
20/02/25-21:00   0.71    0.36    0.00    0.17    0.14    1.38   
20/02/25-21:05   0.72    0.38    0.03    0.17    0.13    1.41   
20/02/25-21:10   0.71    0.51    0.19    0.18    0.14    1.58   
20/02/25-21:15   0.65    0.36    0.00    0.16    0.12    1.30   

MAX              1.05    0.78    0.82    0.17    0.14    2.04   
MEAN             0.77    0.42    0.05    0.17    0.14    1.51   
MIN              0.63    0.39    0.00    0.17    0.14    1.33 
 --------------------------------------------------------------
 user : 表示用户空间cpu
 sys : 内核空间cpu使用情况
 wait : 是IO对应的cpu使用情况
 hirq,sirq : 分别是硬件中断,软件中断的使用情况
 util : 是系统使用cpu的总计情况

3.2.监控内存使用情况

Time           -----------------------mem---------------------- 
Time             free    used    buff    cach   total    util   
20/02/25-20:50 287.9M  294.3M    1.6M  368.9M  952.8M   30.89   
20/02/25-20:55 287.4M  294.7M    1.6M  369.0M  952.8M   30.93   
20/02/25-21:00 285.6M  296.5M    1.6M  369.1M  952.8M   31.12   
20/02/25-21:05 285.6M  296.2M    1.6M  369.3M  952.8M   31.09   
20/02/25-21:10 273.2M  306.4M    1.6M  371.5M  952.8M   32.16   
20/02/25-21:15 266.4M  307.1M    1.6M  377.5M  952.8M   32.24   

MAX            366.6M  321.1M    1.6M  488.9M  952.8M   33.70   
MEAN           219.2M  304.7M    1.6M  427.3M  952.8M   31.98   
MIN            146.7M  289.1M    1.6M  295.5M  952.8M   30.34

3.3.查看指定时间的CPU平均负载

[root@ops ~]# tsar --load -d 20250219
Time           -------------------load----------------- 
Time            load1   load5  load15    runq    plit   
19/02/25-22:15   0.00    0.08    0.11    4.00  198.00   
19/02/25-22:20   0.06    0.06    0.09    2.00  191.00   
19/02/25-22:25   0.20    0.09    0.09    1.00  191.00   
19/02/25-22:30   0.00    0.02    0.06    4.00  195.00   
19/02/25-22:35   0.01    0.03    0.05    1.00  192.00   
19/02/25-22:40   0.00    0.01    0.03    4.00  192.00   
19/02/25-22:45   0.01    0.02    0.01    1.00  194.00   
19/02/25-22:50   0.02    0.01    0.00    2.00  192.00   
19/02/25-22:55   0.00    0.00    0.00    3.00  190.00   
19/02/25-23:00   0.00    0.00    0.00    4.00  190.00   
19/02/25-23:05   0.01    0.01    0.00    1.00  190.00   
19/02/25-23:10   0.00    0.00    0.00    3.00  191.00   
19/02/25-23:15   0.05    0.05    0.01    4.00  190.00   
19/02/25-23:20   0.00    0.01    0.00    2.00  191.00   

MAX              0.20    0.08    0.11    4.00  198.00   
MEAN             0.03    0.02    0.03    2.46  191.46   
MIN              0.00    0.08    0.00    1.00  190.00 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

某手sig3-ios算法 Chomper黑盒调用

Chomper-iOS界的Unidbg 最近在学习中发现一个Chomper框架&#xff0c;Chomper 是一个模拟执行iOS可执行文件的框架&#xff0c;类似于安卓端大名鼎鼎的Unidbg。 这篇文章使用Chomper模拟执行某手的sig3算法&#xff0c;初步熟悉该框架。这里只熟悉模拟执行步骤以及一些常见的…

MySQL版本选择与安装

MySQL版本选择与安装 MySQL 5.5 优点: 稳定性&#xff1a;5.5版本是长期支持&#xff08;LTS&#xff09;版本&#xff0c;因此它非常稳定&#xff0c;被广泛部署在生产环境中。 兼容性&#xff1a;与旧版本的MySQL和各种应用程序有很好的兼容性。 缺点: 过时&#xff1a;…

【飞行器原理学习】——1. 机翼及机翼参数

飞行器原理学习——1.机翼 一、 概述 飞机的各种机翼是飞机的控制面 通过铰链、钢索、液压等方式连接在机身上 操纵面运动时&#xff0c;会改变机翼的弧度和形状&#xff0c;使流经的空气发生偏转&#xff0c;从而影响空气动力的大小。使飞机围绕着3轴运动 二、机翼的操纵面…

TS语言自定义脚手架

初始化 新建文件夹初始化命令 npm init -ytsc --initnpm i types/nodenpm i typescript# 处理别名npm i -D tsc-alias -y 表示选项都为yes 安装ts相关依赖 新建相关文件 bin 文件夹 src文件夹 commands 文件夹 &#xff08;命令 utils 文件夹 (封装方法&#xff09; index.t…

lab4 CSAPP:Cachelab

写在前面 最简单的一集 实验室分为两个部分。在A部分中&#xff0c;实现一个缓存模拟器。在B部分中&#xff0c;编写一个矩阵针对高速缓存性能优化的转置功能。 感觉是比较经典的问题&#xff0c;之前在体系结构的课程中接触过&#xff0c;终于能通过lab实操一下了。 实验目…

VScode C语言学习开发环境;运行提示“#Include错误,无法打开源文件stdio.h”

C/C环境配置 参考&#xff1a; VS Code 配置 C/C 编程运行环境&#xff08;保姆级教程&#xff09;_vscode配置c环境-CSDN博客 基本步骤 - 安装MinGW-W64&#xff0c;其包含 GCC 编译器&#xff1a;bin目录添加到环境变量&#xff1b;CMD 中输入gcc --version或where gcc验证…

雷龙CS SD NAND(贴片式TF卡)测评体验

声明&#xff1a;非广告&#xff0c;为用户体验文章 前段时间偶然获得了雷龙出品的贴片式 TF 卡芯片及转接板&#xff0c;到手的是两片贴片式 nand 芯片搭配一个转接板&#xff0c;其中有一片官方已经焊接好了&#xff0c;从外观来看&#xff0c;正面和背面设计布局合理&#x…

伯克利 CS61A 课堂笔记 11 —— Mutability

本系列为加州伯克利大学著名 Python 基础课程 CS61A 的课堂笔记整理&#xff0c;全英文内容&#xff0c;文末附词汇解释。 目录 01 Objects 02 Example: Strings Ⅰ Representing Strings: the ASCII Standard Ⅱ Representing Strings: the Unicode Standard 03 Mutatio…

DEX-EE三指灵巧手:扩展AI与机器人研究的边界

DEX-EE三指灵巧手&#xff0c;由Shadow Robot与Google DeepMind合作开发&#xff0c;以其先进技术和设计&#xff0c;正在引领AI与机器人研究的新趋势。其高精度传感器和灵活的机械手指&#xff0c;能够捕捉复杂的环境数据&#xff0c;为强化学习实验提供了可靠支持。 Shadow R…

在ubuntu上用Python的openpyxl模块操作Excel的案例

文章目录 安装模块读取Excel数据库取数匹配数据和更新Excel数据 在Ubuntu系统的环境下基本职能借助Python的openpyxl模块实现对Excel数据的操作。 安装模块 本次需要用到的模块需要提前安装(如果没有的话) pip3 install openpyxl pip3 install pymysql在操作前&#xff0c;需…

【STM32】外部时钟|红外反射光电开关

1.外部时钟 单片机如何对外部触发进行计数&#xff1f;先看一下内部时钟&#xff0c;内部时钟是接在APB1和APB2时钟线上的&#xff0c;APB1,APB2来自stm32单片机内部的脉冲信号&#xff0c;也叫内部时钟。我们用来定时。同样我们可以把外部的信号接入单片机&#xff0c;来对其…

深入了解 DevOps 基础架构:可追溯性的关键作用

在当今竞争激烈的软件环境中&#xff0c;快速交付强大的应用程序至关重要。尽管如此&#xff0c;在不影响质量的情况下保持速度可能是一项艰巨的任务&#xff0c;这就是 DevOps 中的可追溯性发挥作用的地方。通过提供软件开发生命周期 &#xff08;SDLC&#xff09; 的透明视图…

Django+Vue3全栈开发实战:从零搭建博客系统

文章目录 1. 开发环境准备2. 创建Django项目与配置3. 设计数据模型与API4. 使用DRF创建RESTful API5. 创建Vue3项目与配置6. 前端页面开发与组件设计7. 前后端交互与Axios集成8. 项目优化与调试9. 部署上线10. 总结与扩展10.1 项目总结10.1.1 技术栈回顾10.1.2 项目亮点 10.2 扩…

深度学习之图像回归(一)

前言 图像回归任务主要是理解一个最简单的深度学习相关项目的结构&#xff0c;整体的思路&#xff0c;数据集的处理&#xff0c;模型的训练过程和优化处理。 因为深度学习的项目思路是差不多的&#xff0c;主要的区别是对于数据集的处理阶段&#xff0c;之后模型训练有一些小…

解决 Mac 只显示文件大小,不显示目录大小

前言 在使用 mac 的时候总是只显示文件的大小&#xff0c;不显示文件夹的大小&#xff0c;为了解决问题可以开启“计算文件夹”。 步骤 1.进入访达 2.工具栏点击“显示”选项&#xff0c;点击 “查看显示选项” 3.勾选 显示“资源库"文件夹 和 计算所有大小 或者点击…

从零开始学习PX4源码9(部署px4源码到gitee)

目录 文章目录 目录摘要1.gitee上创建仓库1.1 gitee上创建仓库PX4代码仓库1.2 gitee上创建子仓库2.固件在gitee部署过程2.1下载固件到本地2.2切换本地分支2.3修改.gitmodules内容2.4同步子模块仓库地址2.5同步子模块仓库地址更新(下载)子模块3.一级子模块和二级子模块的映射关…

2025年AI数字人大模型+智能家居HA引领未来(开源项目名称:AI Sphere Butler)

介绍 开源项目计划&#xff1a;AI Sphere Butler 打造全方位服务用户生活的AI全能管家——代号**“小粒”**&#xff08;管家名称可以随意自定义&#xff09; GitHub地址&#xff1a;https://github.com/latiaoge/AI-Sphere-Butler 项目名称&#xff1a;AI Sphere Butler&…

UGUI RectTransform的SizeDelta属性

根据已知内容&#xff0c;SizeDelta offsetMax - offsetMin 1.锚点聚拢情况下 输出 那么此时SizeDelta就是UI元素的长宽大小 2. 锚点分散时 引用自此篇文章中的描述 揭秘&#xff01;anchoredPosition的几何意义&#xff01; SizeDelta offsetMax - offsetMin (rectMax…

三甲医院网络架构与安全建设实战

一、设计目标 实现医疗业务网/卫生专网/互联网三网隔离 满足等保2.0三级合规要求 保障PACS影像系统低时延传输 实现医疗物联网统一接入管控 二、全网拓扑架构 三、网络分区与安全设计 IP/VLAN规划表 核心业务配置&#xff08;华为CE6865&#xff09; interface 100G…

机器学习笔记——常用损失函数

大家好&#xff0c;这里是好评笔记&#xff0c;公主号&#xff1a;Goodnote&#xff0c;专栏文章私信限时Free。本笔记介绍机器学习中常见的损失函数和代价函数&#xff0c;各函数的使用场景。 热门专栏 机器学习 机器学习笔记合集 深度学习 深度学习笔记合集 文章目录 热门…