Linux系统监控

文章目录

  • 一、系统监控基本介绍
  • 二、内存监控
  • 2.1、内存监控字段解析
    • 2.2、windows下查看内存
      • 2.2.1、通过cmd中命令查看内存条信息:
      • 2.2.2、通过cmd中命令查看物理内存信息:
      • 2.2.3、使用任务管理器查看内存
      • 2.2.4、使用资源监视器查看内存
      • 2.2.5、使用系统信息工具查看内存
      • 2.2.6、使用设备管理器查看内存
    • 2.3、linux下查看内存、CPU等
      • 2.3.1、free命令
      • 2.3.2、/proc/meminfo文件
      • 2.3.3、vmstat命令
      • 2.3.4、top命令
      • 2.3.5、sar命令
      • 2.3.6、mpstat命令
      • 2.3.7、glances命令
      • 2.3.8、atop命令


一、系统监控基本介绍

系统监控室系统管理员日常的主要工作之一,它可以分为性能监控和故障监控。不论windows还是Linux系统都提供了各种日志及性能监控工具以帮助管理员完成系统监控工作。

二、内存监控

2.1、内存监控字段解析

字段类别说明
rprocs(进程)在运行队列中等待的进程数
bprocs(进程)在等待io的进程数
swpdmemory(内存)已经使用的交换内存(kb)
freememory(内存)空闲的物理内存(kb)
buffmemory(内存)用做缓冲区的内存数(kb)
cachememory(内存)用做高速缓存的内存数(kb)
siswap(交换页面)从磁盘交换到内存的交换页数量(kb/秒)
soswap(交换页面)从内存交换到磁盘的交换页数据(kb/秒)
biIO(块设备)发送到块设备的块数(块/秒)
boIO(块设备)从块设备中接收的块数(块/秒)
insystem(系统)每秒的中断数,包括时钟中断
cssystem(系统)每秒的上下文切换的次数
usCPU(处理器)用户进程使用的cpu时间(%)
syCPU(处理器)系统进程使用的cpu时间(%)
idCPU(处理器)CPU空闲时间(%)
waCPU(处理器)等待IO所消耗的cpu时间(%)
stCPU(处理器)从虚拟设备中获得的时间(%)

2.2、windows下查看内存

2.2.1、通过cmd中命令查看内存条信息:

C:\Users\yuanl>wmic memorychip list brief
Capacity    DeviceLocator   MemoryType  Name             Tag                TotalWidth
8589934592  ChannelA-DIMM0  0           Physical Memory  Physical Memory 0  64
8589934592  ChannelB-DIMM0  0           Physical Memory  Physical Memory 1  64
  • Capacity:内存大小,单位为字节。
  • DeviceLocator:内存条在主板上的位置。
  • MemoryType:内存类型,0表示未知内存类型,1表示DRAM,2表示EDRAM,3表示VRAM,4表示SRAM,5表示RAM,6表示ROM,7表示FLASH,8表示EEPROM。
  • Name:内存条名称。
  • Tag:内存条标签。
  • otalWidth:总线宽度,单位为位。

2.2.2、通过cmd中命令查看物理内存信息:

C:\Users\yuanl>wmic memphysical list brief
MaxCapacity  MemoryDevices  Model  Name
33554432     2                     Physical Memory Array
  • MaxCapacity:物理内存阵列的最大容量,单位为字节。
  • MemoryDevices:可用内存设备(或插槽)的总数。
  • Model:内存设备的型号。
  • Name:物理内存阵列的名称。

2.2.3、使用任务管理器查看内存

过按Ctrl+Alt+Del或右键点击任务栏选择“任务管理器”,可以在“性能”标签下查看到物理内存的使用情况,包括总量、已使用量和剩余量。

在这里插入图片描述

2.2.4、使用资源监视器查看内存

过在开始菜单搜索“资源监视器”或在任务管理器的“性能”标签下点击“打开资源监视器”,可以查看更详细的内存使用情况,包括物理内存和虚拟内存的使用详情。

在这里插入图片描述

2.2.5、使用系统信息工具查看内存

使用msinfo32命令可以打开系统信息窗口,虽然这主要显示的是软件配置和版本信息,但也提供了部分硬件信息。

在这里插入图片描述

2.2.6、使用设备管理器查看内存

打开设备管理器不仅可以查看内存设备,还可以查看其他所有硬件设备的详细信息,通过“控制面板”中的“系统和安全”进入“系统管理工具”找到并使用“设备管理器”。

在这里插入图片描述

2.3、linux下查看内存、CPU等

2.3.1、free命令

以字节为单位显示内存使用情况。

[root@httpsl ~]# free -btotal        used        free      shared  buff/cache   available
Mem:     1841668096   133828608  1285623808      557056   422215680  1555902464
Swap:             0           0           0

以千字节(KB)为单位显示。

[root@httpsl ~]# free -ktotal        used        free      shared  buff/cache   available
Mem:        1798504      130824     1253508         544      414172     1518468
Swap:             0           0           0

以兆字节(MB)为单位显示。

[root@httpsl ~]# free -mtotal        used        free      shared  buff/cache   available
Mem:           1756         128        1223           0         404        1482
Swap:             0           0           0

以吉字节(GB)为单位显示。

[root@httpsl ~]# free -gtotal        used        free      shared  buff/cache   available
Mem:              1           0           1           0           0           1
Swap:             0           0           0

以易于阅读的格式(KB、MB、GB)显示,根据大小自动选择单位。

[root@httpsl ~]# free -htotal        used        free      shared  buff/cache   available
Mem:           1.7G        127M        1.2G        544K        404M        1.4G
Swap:            0B          0B          0B

持续观察内存使用状况,每隔指定秒数刷新显示。

[root@httpsl ~]# free -s 10total        used        free      shared  buff/cache   available
Mem:        1798504      134640     1226800         544      437064     1512644
Swap:             0           0           0total        used        free      shared  buff/cache   available
Mem:        1798504      135096     1226304         544      437104     1512192
Swap:             0           0           0

显示内存总和列。

[root@httpsl ~]# free -ttotal        used        free      shared  buff/cache   available
Mem:        1798504      134544     1226772         544      437188     1512728
Swap:             0           0           0
Total:      1798504      134544     1226772
  • Mem行:显示物理内存的使用情况。
  • total:系统总的可用物理内存。
  • used:已经被使用的物理内存。
  • free:还有多少物理内存可用。
  • shared:被共享使用的物理内存大小。
  • buff/cache:被buffer和cache使用的物理内存大小。
  • available:还可以被应用程序使用的物理内存大小。
  • Swap行:显示交换空间(swap space)的使用情况。
  • total:系统总的可用交换空间大小。
  • used:已经被使用的交换空间。
  • free:还有多少交换空间可用。

2.3.2、/proc/meminfo文件

在Linux系统中,/proc/meminfo是一个伪文件,用于提供系统的内存使用情况的详细信息。这个文件包含了系统内存的多种统计信息,包括总内存、空闲内存、缓存内存等。通过查看/proc/meminfo文件,可以实时了解系统的内存使用状况,对于系统性能分析和故障诊断具有重要意义。

[root@httpsl ~]# cat /proc/meminfo 
MemTotal:        1798504 kB
MemFree:         1209972 kB
MemAvailable:    1514392 kB
Buffers:           37652 kB
Cached:           377780 kB
SwapCached:            0 kB
Active:           177124 kB
Inactive:         297364 kB
Active(anon):      59308 kB
Inactive(anon):      224 kB
Active(file):     117816 kB
Inactive(file):   297140 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:             0 kB
SwapFree:              0 kB
Dirty:                36 kB
Writeback:             0 kB
AnonPages:         59176 kB
Mapped:            48372 kB
Shmem:               480 kB
Slab:              54176 kB
SReclaimable:      40596 kB
SUnreclaim:        13580 kB
KernelStack:        2512 kB
PageTables:         4124 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:      899252 kB
Committed_AS:     361260 kB
VmallocTotal:   34359738367 kB
VmallocUsed:        9120 kB
VmallocChunk:   34359724540 kB
Percpu:              328 kB
HardwareCorrupted:     0 kB
AnonHugePages:     20480 kB
CmaTotal:              0 kB
CmaFree:               0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:       62136 kB
DirectMap2M:     1951744 kB
DirectMap1G:           0 kB
  • MemTotal:系统总内存大小,单位为KB。
  • MemFree:系统空闲内存大小,单位为KB。
  • MemAvailable:系统可用内存大小,单位为KB。
  • Buffers:缓冲区内存大小,单位为KB。
  • Cached:缓存内存大小,单位为KB。
  • SwapCached:交换缓存大小,单位为KB。
  • Active:活动内存大小,单位为KB。
  • Inactive:非活动内存大小,单位为KB。
  • Active(anon):匿名活动内存大小,单位为KB。
  • Inactive(anon):匿名非活动内存大小,单位为KB。
  • Active(file):文件活动内存大小,单位为KB。
  • Inactive(file):文件非活动内存大小,单位为KB。
  • Unevictable:不可回收内存大小,单位为KB。
  • Mlocked:锁定内存大小,单位为KB。
  • SwapTotal:交换分区总大小,单位为KB。
  • SwapFree:交换分区空闲大小,单位为KB。
  • Dirty:脏页内存大小,单位为KB。
  • Writeback:写回内存大小,单位为KB。
  • AnonPages:匿名页面内存大小,单位为KB。
  • Mapped:映射内存大小,单位为KB。
  • Shmem:共享内存大小,单位为KB。
  • Slab:内核数据结构缓存大小,单位为KB。
  • SReclaimable:可回收内核数据结构缓存大小,单位为KB。
  • SUnreclaim:不可回收内核数据结构缓存大小,单位为KB。
  • KernelStack:内核栈内存大小,单位为KB。
  • PageTables:页表内存大小,单位为KB。
  • NFS_Unstable:NFS不稳定页面内存大小,单位为KB。
  • Bounce:反弹缓冲区内存大小,单位为KB。
  • WritebackTmp:临时写回内存大小,单位为KB。
  • CommitLimit:提交限制内存大小,单位为KB。
  • Committed_AS:已提交地址空间内存大小,单位为KB。
  • VmallocTotal:虚拟内存总大小,单位为KB。
  • VmallocUsed:虚拟内存已使用大小,单位为KB。
  • VmallocChunk:虚拟内存块大小,单位为KB。
  • Percpu:每个CPU的内存大小,单位为KB。
  • HardwareCorrupted:硬件损坏内存大小,单位为KB。
  • AnonHugePages:匿名大页内存大小,单位为KB。
  • CmaTotal:连续内存分配器总大小,单位为KB。
  • CmaFree:连续内存分配器空闲大小,单位为KB。
  • HugePages_Total:大页总数。
  • HugePages_Free:大页空闲数。
  • HugePages_Rsvd:预留的大页数。
  • HugePages_Surp:超过预期的大页数。
  • Hugepagesize:大页大小,单位为KB。
  • DirectMap4k:直接映射4KB内存大小,单位为KB。
  • DirectMap2M:直接映射2MB内存大小,单位为KB。
  • DirectMap1G:直接映射1GB内存大小,单位为KB。

2.3.3、vmstat命令

显示系统的内存统计信息。

root@httpsl ~]# vmstat -s1798504 K total memory132216 K used memory177120 K active memory297544 K inactive memory1210020 K free memory37836 K buffer memory418432 K swap cache0 K total swap0 K used swap0 K free swap24361 non-nice user cpu ticks192 nice user cpu ticks12338 system cpu ticks9097168 idle cpu ticks834 IO-wait cpu ticks0 IRQ cpu ticks26 softirq cpu ticks0 stolen cpu ticks177020 pages paged in683504 pages paged out0 pages swapped in0 pages swapped out77553179 interrupts150449351 CPU context switches1717157188 boot time13072 forks
  • total memory:总内存大小,单位为KB。
  • used memory:已使用的内存大小,单位为KB。
  • active memory:活动内存大小,单位为KB。
  • inactive memory:非活动内存大小,单位为KB。
  • free memory:空闲内存大小,单位为KB。
  • buffer memory:缓冲区内存大小,单位为KB。
  • swap cache:交换缓存大小,单位为KB。
  • total swap:交换分区总大小,单位为KB。
  • used swap:已使用的交换分区大小,单位为KB。
  • free swap:空闲交换分区大小,单位为KB。
  • non-nice user cpu ticks:非优先级用户CPU时间片。
  • nice user cpu ticks:优先级用户CPU时间片。
  • system cpu ticks:系统CPU时间片。
  • idle cpu ticks:空闲CPU时间片。
  • IO-wait cpu ticks:等待I/O操作的CPU时间片。
  • IRQ cpu ticks:处理中断请求的CPU时间片。
  • softirq cpu ticks:处理软中断的CPU时间片。
  • stolen cpu ticks:被其他虚拟机占用的CPU时间片。
  • pages paged in:从磁盘调入内存的页面数。
  • pages paged out:从内存调出到磁盘的页面数。
  • pages swapped in:从交换分区调入内存的页面数。
  • pages swapped out:从内存调出到交换分区的页面数。
  • interrupts:中断次数。
  • CPU context switches:CPU上下文切换次数。
  • boot time:系统启动时间。
  • forks:进程创建次数。

每秒更新一次内存使用情况,按Ctrl+C可以停止实时监控。

[root@httpsl ~]# vmstat 1
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st1  0      0 1209684  37908 418512    0    0     2     7  381  242  0  0 100  0  00  0      0 1209052  37916 418532    0    0     0    48 2112 3744  3  2 95  0  00  0      0 1209056  37916 418552    0    0     0     0 2087 3693  3  2 96  0  00  0      0 1208940  37924 418544    0    0     0    76 2092 3730  2  2 96  1  0
  • procs:进程信息,包括运行队列中的进程数(r)和等待磁盘I/O的进程数(b)。
  • memory:内存使用情况,包括交换分区使用量(swpd)、空闲内存量(free)、缓冲区大小(buff)、缓存大小(cache)。
  • swap:交换分区使用情况,包括从磁盘读取的数据量(si)和写入磁盘的数据量(so)。
  • io:磁盘I/O统计信息,包括块设备输入数据量(bi)和输出数据量(bo)。
  • system:系统中断和上下文切换统计信息,包括每秒中断次数(in)和每秒上下文切换次数(cs)。
  • cpu:CPU使用情况,包括用户态占用时间百分比(us)、系统态占用时间百分比(sy)、空闲时间百分比(id)、等待I/O时间百分比(wa)和被强制调度时间百分比(st)。

2.3.4、top命令

参数后面跟一个数字,用来设置top命令界面刷新的时间间隔,单位是秒;默认情况下,这个时间间隔为5秒。

top - 09:02:43 up 12:56,  1 user,  load average: 0.00, 0.01, 0.05
Tasks:  83 total,   1 running,  82 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.2 us,  0.1 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1798504 total,  1207480 free,   133764 used,   457260 buff/cache
KiB Swap:        0 total,        0 free,        0 used.  1513040 avail Mem PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND               1714 root      10 -10  141608  16248  10576 S   1.4  0.9  11:22.11 AliYunDunMonito       1703 root      10 -10  113392   9184   7084 S   0.2  0.5   3:11.77 AliYunDun             
13187 root      20   0  161968   2212   1580 R   0.2  0.1   0:00.01 top                   1 root      20   0  125628   4076   2612 S   0.0  0.2   0:01.42 systemd               2 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kthreadd              4 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H          5 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kworker/u4:0          6 root      20   0       0      0      0 S   0.0  0.0   0:00.02 ksoftirqd/0           7 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 migration/0           8 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcu_bh                9 root      20   0       0      0      0 S   0.0  0.0   0:07.44 rcu_sched             10 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 lru-add-drain         11 root      rt   0       0      0      0 S   0.0  0.0   0:00.11 watchdog/0       
  • PID: 进程ID,用于唯一标识一个进程。
  • USER: 运行该进程的用户。
  • PR: 进程的优先级,数值越小表示优先级越高。
  • NI: 进程的nice值,用于调整进程的优先级。正值表示降低优先级,负值表示提高优先级。
  • VIRT: 进程使用的虚拟内存量,包括代码、数据和共享库等。
  • RES: 进程使用的物理内存量,不包括交换区。
  • SHR: 进程使用的共享内存量。
  • S: 进程的状态,如运行(R)、休眠(S)、僵尸(Z)等。
  • %CPU: 进程占用的CPU百分比。
  • %MEM: 进程占用的内存百分比。
  • TIME+: 进程运行的总时间,包括用户态和内核态的时间。
  • COMMAND: 进程的命令名或命令行。

-b参数使top命令以批处理模式运行,在这种模式下,top不会与终端进行交互。

[root@httpsl ~]# top -b
top - 09:10:53 up 13:04,  1 user,  load average: 0.02, 0.02, 0.05
Tasks:  85 total,   1 running,  84 sleeping,   0 stopped,   0 zombie
%Cpu(s):  6.5 us,  3.2 sy,  0.0 ni, 90.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1798504 total,  1206324 free,   134692 used,   457488 buff/cache
KiB Swap:        0 total,        0 free,        0 used.  1512120 avail Mem PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND1 root      20   0  125628   4076   2612 S   0.0  0.2   0:01.43 systemd2 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kthreadd4 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H5 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kworker/u4:06 root      20   0       0      0      0 S   0.0  0.0   0:00.02 ksoftirqd/07 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 migration/08 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcu_bh9 root      20   0       0      0      0 S   0.0  0.0   0:07.51 rcu_sched10 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 lru-add-drain11 root      rt   0       0      0      0 S   0.0  0.0   0:00.12 watchdog/0

当与-b结合使用时,-n参数指定了top输出的次数。

[root@httpsl ~]# top -b -n 3
top - 09:11:46 up 13:05,  1 user,  load average: 0.01, 0.02, 0.05
Tasks:  85 total,   1 running,  84 sleeping,   0 stopped,   0 zombie
%Cpu(s):  3.4 us,  0.0 sy,  0.0 ni, 96.6 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1798504 total,  1206892 free,   134064 used,   457548 buff/cache
KiB Swap:        0 total,        0 free,        0 used.  1512772 avail Mem PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND1 root      20   0  125628   4076   2612 S   0.0  0.2   0:01.44 systemd2 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kthreadd4 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H5 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kworker/u4:06 root      20   0       0      0      0 S   0.0  0.0   0:00.02 ksoftirqd/07 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 migration/0

2.3.5、sar命令

sar命令是Linux系统中一个强大的工具,用于收集、报告和保存系统活动信息。它能够提供关于系统性能的详细数据,帮助管理员监控系统状态并优化性能。

[root@httpsl ~]# sar
Linux 3.10.0-1160.114.2.el7.x86_64 (httpsl)     06/01/2024      _x86_64_        (2 CPU)12:00:01 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
12:10:01 AM     all      0.26      0.00      0.12      0.00      0.00     99.62
12:20:01 AM     all      0.25      0.00      0.12      0.00      0.00     99.63
12:30:01 AM     all      0.24      0.00      0.12      0.00      0.00     99.64
12:40:01 AM     all      0.24      0.00      0.12      0.00      0.00     99.63
12:50:01 AM     all      0.23      0.00      0.11      0.00      0.00     99.65
01:00:01 AM     all      0.25      0.00      0.12      0.00      0.00     99.63
  • %user:用户态占用CPU百分比
  • %nice:优先级调整为负值的用户态进程占用CPU百分比
  • %system:内核态占用CPU百分比
  • %iowait:等待I/O操作完成的时间占用CPU百分比
  • %steal:虚拟化环境中,被其他虚拟机占用的CPU时间百分比
  • %idle:空闲CPU时间百分比

监控CPU资源。(每10秒采集一次数据,连续采集3次,并将结果存入名为test的文件。)

[root@httpsl ~]# sar -u -o test 10 3
Linux 3.10.0-1160.114.2.el7.x86_64 (httpsl)     06/01/2024      _x86_64_        (2 CPU)10:10:35 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
10:10:45 AM     all      1.06      0.00      0.50      0.05      0.00     98.39
10:10:55 AM     all      0.25      0.00      0.10      0.00      0.00     99.65
10:11:05 AM     all      0.25      0.00      0.10      0.00      0.00     99.65
Average:        all      0.52      0.00      0.24      0.02      0.00     99.23

监控内存交换空间。(sar -r 10 3 会显示物理内存和交换空间的统计信息,如kbmemfree、kbmemused等指标。)

[root@httpsl ~]# sar -r 10 3
Linux 3.10.0-1160.114.2.el7.x86_64 (httpsl)     06/01/2024      _x86_64_        (2 CPU)10:16:36 AM kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10:16:46 AM   1204964    593540     33.00     39916    379252    362760     20.17    178128    300284       496
10:16:56 AM   1204960    593544     33.00     39916    379252    362760     20.17    178144    300292       488
10:17:06 AM   1204960    593544     33.00     39920    379252    362760     20.17    178144    300292       488
Average:      1204961    593543     33.00     39917    379252    362760     20.17    178139    300289       491
  • kbmemfree:空闲内存大小,单位为KB
  • kbmemused:已使用内存大小,单位为KB
  • %memused:已使用内存占总内存的百分比
  • kbbuffers:缓冲区大小,单位为KB
  • kbcached:缓存大小,单位为KB
  • kbcommit:系统当前使用的总内存大小,单位为KB
  • %commit:系统当前使用的总内存占总内存的百分比
  • kbactive:活动内存大小,单位为KB
  • kbinact:非活动内存大小,单位为KB
  • kbdirty:脏页大小,单位为KB

监控进程队列长度。(使用 sar -q可以用于监控进程队列长度和平均负载状态)

[root@httpsl ~]# sar -q
Linux 3.10.0-1160.114.2.el7.x86_64 (httpsl)     06/01/2024      _x86_64_        (2 CPU)12:00:01 AM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
12:10:01 AM         1       158      0.00      0.01      0.05         0
12:20:01 AM         0       158      0.00      0.01      0.05         0
12:30:01 AM         0       158      0.00      0.02      0.05         0
12:40:01 AM         0       158      0.00      0.01      0.05         0
12:50:01 AM         0       158      0.00      0.01      0.05         0
01:00:01 AM         1       158      0.00      0.01      0.05         0
01:10:01 AM         0       158      0.00      0.01      0.05         0
  • runq-sz:运行队列长度,即等待运行的进程数
  • plist-sz:进程列表大小,即当前系统中正在运行的进程数量
  • ldavg-1:过去1分钟的平均负载值
  • ldavg-5:过去5分钟的平均负载值
  • ldavg-15:过去15分钟的平均负载值
  • blocked:被阻塞的进程数量

2.3.6、mpstat命令

mpstat是Linux系统中一个用于监控多处理器性能的工具,它能够报告每个处理器的使用情况、上下文切换、中断以及CPU负载等信息。

显示所有CPU状态。

[root@httpsl ~]# mpstat -A
Linux 3.10.0-1160.114.2.el7.x86_64 (httpsl)     06/01/2024      _x86_64_        (2 CPU)10:32:09 AM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
10:32:09 AM  all    0.27    0.00    0.14    0.01    0.00    0.00    0.00    0.00    0.00   99.59
10:32:09 AM    0    0.26    0.00    0.13    0.01    0.00    0.00    0.00    0.00    0.00   99.59
10:32:09 AM    1    0.27    0.00    0.14    0.00    0.00    0.00    0.00    0.00    0.00   99.5810:32:09 AM  CPU    intr/s
10:32:09 AM  all   1683.31
10:32:09 AM    0     66.01
10:32:09 AM    1     63.9210:32:09 AM  CPU        0/s        1/s        4/s        6/s        8/s        9/s       10/s       11/s       12/s       14/s       15/s       24/s       25/s       26/s       27/s       28/s       29/s       30/s      NMI/s      LOC/s      SPU/s      PMI/s      IWI/s      RTR/s      RES/s      CAL/s      TLB/s      TRM/s      THR/s      DFR/s      MCE/s      MCP/s      ERR/s      MIS/s      PIN/s      NPI/s      PIW/s
10:32:09 AM    0       0.00       0.00       0.01       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.75       0.00       0.00       0.00       0.00       0.86       0.00     805.37       0.00       0.00       5.02       0.00      30.57       0.04       0.04       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00
10:32:09 AM    1       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.60       0.00       0.00       0.00       0.00       0.00     804.50       0.00       0.00       4.94       0.00      30.55       0.01       0.05       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.0010:32:09 AM  CPU       HI/s    TIMER/s   NET_TX/s   NET_RX/s    BLOCK/s BLOCK_IOPOLL/s  TASKLET/s    SCHED/s  HRTIMER/s      RCU/s
10:32:09 AM    0       0.00      32.50       0.00       0.73       0.84       0.00       0.00      14.34       0.00      17.60
10:32:09 AM    1       0.00      31.79       0.00       0.00       0.00       0.00       0.00      14.65       0.00      17.48
  • %usr:用户态所使用CPU的百分比。
  • %nice:具有nice优先级的用户所使用CPU的百分比。
  • %sys:内核进程使用的CPU百分比。
  • %iowait:等待进行I/O操作所使用的CPU时间百分比。
  • %irq:用于处理系统中断的CPU百分比。
  • %soft:用于软件中断的CPU百分比。
  • %steal:虚拟机强制CPU等待的时间百分比。
  • %guest:虚拟机占用CPU时间的百分比。
  • %idle:CPU的空闲时间百分比。
  • intr/s:每秒中断次数。
  • CPU HI/s:每秒硬中断次数。
  • TIMER/s:每秒定时器中断次数。
  • NET_TX/s:每秒网络发送数据包次数。
  • NET_RX/s:每秒网络接收数据包次数。
  • BLOCK/s:每秒阻塞任务数量。
  • BLOCK_IOPOLL/s:每秒阻塞在I/O轮询上的进程数量。
  • TASKLET/s:每秒tasklet调度次数。
  • SCHED/s:每秒调度次数。
  • HRTIMER/s:每秒高精度定时器中断次数。
  • RCU/s:每秒RCU锁保护的临界区执行次数。

指定要监控的CPU编号,使用ALL表示监控所有CPU。

[root@httpsl ~]# mpstat -P ALL
Linux 3.10.0-1160.114.2.el7.x86_64 (httpsl)     06/01/2024      _x86_64_        (2 CPU)10:35:15 AM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
10:35:15 AM  all    0.27    0.00    0.14    0.01    0.00    0.00    0.00    0.00    0.00   99.58
10:35:15 AM    0    0.26    0.00    0.13    0.01    0.00    0.00    0.00    0.00    0.00   99.59
10:35:15 AM    1    0.27    0.00    0.14    0.00    0.00    0.00    0.00    0.00    0.00   99.58

2.3.7、glances命令

Glances是一个由Python编写的、基于curses开发的跨平台命令行系统监视工具。它能够提供实时的系统性能监控,包括但不限于CPU使用率、内存使用情况、网络流量、磁盘I/O和其他处理器状态等。

注:因为有些麻烦,这里没有安装Glances

2.3.8、atop命令

atop 是 Linux 系统中一款强大的性能监控工具,它可以实时跟踪系统资源的使用情况,并记录历史数据以供后续分析。

[root@httpsl ~]# yum install -y atop

直接输入atop命令即可开始监控系统的实时活动。

ATOP - httpsl                                         2024/06/01  10:50:06                                         -----------------                                           10s elapsed
PRC | sys    0.09s | user   0.15s |              | #proc     83 | #trun      1 | #tslpi   156 |               | #tslpu     0 | #zombie    0 | clones     5 |              | #exit      5 |
CPU | sys       1% | user      1% | irq       0% |              |              | idle    199% |  wait      0% | steal     0% | guest     0% |              |              | curf 2.50GHz |
cpu | sys       0% | user      1% | irq       0% |              |              | idle     99% |  cpu001 w  0% | steal     0% | guest     0% |              |              | curf 2.50GHz |
cpu | sys       0% | user      0% | irq       0% |              |              | idle    100% |  cpu000 w  0% | steal     0% | guest     0% |              |              | curf 2.50GHz |
CPL | avg1    0.00 | avg5    0.01 |              | avg15   0.05 |              |              |  csw    33029 | intr   17108 |              |              | numcpu     2 |              |
MEM | tot     1.7G | free  679.0M | cache 847.0M | dirty   0.2M | buff   45.6M | slab   64.2M |  slrec  50.5M | shmem   0.5M | shrss   0.0M | shswp   0.0M |              | numnode    1 |
SWP | tot     0.0M | free    0.0M |              | swcac   0.0M |              |              |               |              |              | vmcom 358.9M | vmlim 878.2M |              |
DSK |          vda | busy      0% | read       0 |              | write     13 | KiB/r      0 |  KiB/w      8 | MBr/s    0.0 | MBw/s    0.0 |              | avq     0.50 | avio 0.46 ms |
NET | transport    | tcpi      10 | tcpo       9 | udpi       0 | udpo       0 | tcpao      0 |  tcppo      0 | tcprs      0 | tcpie      0 | tcpor      0 | udpnp      0 | udpie      0 |
NET | network      | ipi       10 | ipo        9 |              | ipfrw      0 | deliv     10 |               |              |              |              | icmpi      0 | icmpo      0 |
NET | eth0    ---- | pcki      11 | pcko      10 | sp    0 Mbps | si    0 Kbps | so    4 Kbps |  coll       0 | mlti       0 | erri       0 | erro       0 | drpi       0 | drpo       0 |PID     SYSCPU      USRCPU     RDELAY       VGROW       RGROW      RDDSK       WRDSK      RUID         EUID          ST     EXC       THR      S     CPUNR       CPU      CMD        1/21714      0.07s       0.09s      0.00s          0B          0B         0B        4.0K      root         root          --       -        27      S         0        2%      AliYunDunMonit1703      0.00s       0.03s      0.00s          0B          0B         0B        4.0K      root         root          --       -        11      S         0        0%      AliYunDun
13938      0.01s       0.01s      0.00s          0B          0B         0B          0B      root         root          --       -         1      R         1        0%      atop1494      0.00s       0.01s      0.00s          0B          0B         0B          0B      root         root          --       -         8      S         1        0%      aliyun-service1377      0.01s       0.00s      0.00s          0B          0B         0B          0B      root         root          --       -         7      S         0        0%      AliYunDunUpdat542      0.00s       0.01s      0.00s          0B          0B         0B          0B      root         root          --       -         1      S         1        0%      systemd-logind872      0.00s       0.00s      0.00s          0B          0B         0B          0B      root         root          --       -         5      S         0        0%      tuned1303      0.00s       0.00s      0.00s          0B          0B         0B        8.0K      root         root          --       -         3      S         1        0%      rsyslogd547      0.00s       0.00s      0.00s          0B          0B         0B          0B      polkitd      polkitd       --       -         7      S         1        0%      polkitd366      0.00s       0.00s      0.00s          0B        4.0K         0B      212.0K      root         root          --       -         1      S         1        0%      systemd-journa1      0.00s       0.00s      0.00s          0B          0B         0B          0B      root         root          --       -         1      S         1        0%      systemd1637      0.00s       0.00s      0.00s          0B          0B         0B          0B      root         root          --       -         8      S         1        0%      assist_daemon551      0.00s       0.00s      0.00s          0B          0B         0B          0B      dbus         dbus          --       -         1      S         0        0%      dbus-daemon1307      0.00s       0.00s      0.00s          0B          0B         0B       12.0K      root         root          --       -         1      S         0        0%      crond433      0.00s       0.00s      0.00s          0B          0B         0B        4.0K      root         root          --       -         2      S         0        0%      auditd5      0.00s       0.00s      0.00s          0B          0B         0B          0B      root         root          --       -         1      S         0        0%      kworker/u4:06      0.00s       0.00s      0.00s          0B          0B         0B          0B      root         root          --       -         1      S         0        0%      ksoftirqd/09      0.00s       0.00s      0.00s          0B          0B         0B          0B      root         root          --       -         1      S         0        0%      rcu_sched14      0.00s       0.00s      0.00s          0B          0B         0B          0B      root         root          --       -         1      S         1        0%      ksoftirqd/1100      0.00s       0.00s      0.00s          0B          0B         0B          0B      root         root          --       -         1      S         0        0%      kauditd253      0.00s       0.00s      0.00s          0B          0B         0B          0B      root         root          --       -         1      S         0        0%      kworker/0:1H

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Stable Diffusion Webui--安装与使用

最近进行的课程汇报,学习了2023年的CVPR文章《DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Driven Generation》,因此尝试使用了几种方法对这篇文章的工作进行了一定的复现。本文主要介绍Stable Diffusion Web UI(webui)的安装…

锅炉智能制造工厂工业物联数字孪生平台,推进制造业数字化转型

在制造业快速发展的今天,数字化转型已经成为企业提升竞争力的关键途径。锅炉智能制造工厂工业物联数字孪生平台,作为一种创新的技术解决方案,正以其独特的优势,为制造业的数字化转型提供强大动力。锅炉智能制造工厂工业物联数字孪…

Git基本配置,使用Gitee(一)

1、设置Giter的user name和email 设置提交用户的信息 git config --global user.name "username" git config --global user.email "Your e-mail"查看配置 git config --list2、生成 SSH 公钥 通过命令 ssh-keygen 生成 SSH Key -t key 类型 -C 注释 ssh-…

Stable Diffusion生成图片的参数查看与抹除方法

前几天分享了几张Stable Diffusion生成的艺术二维码,有同学反映不知道怎么查看图片的参数信息,还有的同学问怎么保护自己的图片生成参数不会泄露,这篇文章就来专门分享如何查看和抹除图片的参数。 查看图片的生成参数 1、打开Stable Diffus…

Vxe UI vxe-upload 上传组件,显示进度条的方法

vxe-upload 上传组件 查看官网 https://vxeui.com 显示进度条很简单,需要后台支持进度就可以了,后台实现逻辑具体可以百度,这里只介绍前端逻辑。 上传附件 相关参数说明,具体可以看文档: multiple 是否允许多选 li…

解锁 JavaScript ES6:函数与对象的高级扩展功能

个人主页:学习前端的小z 个人专栏:JavaScript 精粹 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结,欢迎大家在评论区交流讨论! ES5、ES6介绍 文章目录 💯ES6函数扩展🍓1 默认参数&#x1f35…

【每日刷题】Day53

【每日刷题】Day53 🥕个人主页:开敲🍉 🔥所属专栏:每日刷题🍍 🌼文章目录🌼 1. 1019. 链表中的下一个更大节点 - 力扣(LeetCode) 2. 116. 填充每个节点的下一…

[有监督学习]2.详细图解正则化

正则化 正则化是防止过拟合的一种方法,与线性回归等算法配合使用。通过向损失函数增加惩罚项的方式对模型施加制约,有望提高模型的泛化能力。 概述 正则化是防止过拟合的方法,用于机器学习模型的训练阶段。过拟合是模型在验证数据上产生的误…

DL/ML/RL/TL/FL机器学习框架总结

前言 本文总结了DL/深度学习、ML/机器学习、DML/分布式机器学习、AutoML/自动化机器学习、RL/强化学习、MLaaS/机器学习及服务、SR/语音识别领域的机器学习框架,可作为学习、研究、研发的参考资料。 1.DL/深度学习框架 PyTorch PyTorch是一个开源的Python机器学…

面试题:计算机网络中的七四五是什么?

面试题:计算机网络中的七四五是什么? 计算机网络中说的七四五是指:OSI 七层模型、TCP/IP 四层模型、OSI 与 TCP/IP 的综合五层模型 OSI 七层模型 OSI 将计算机网络分为了七层,每一层抽象底层的内容,并遵守一定的规则…

逆天工具一键修复图片,视频去码。本地部署超详细!!

上一篇文章:逆天工具一键修复图片,视频去码。简直不要太好用!-CSDN博客 根据上一篇文章展示的效果,本文章主要讲如何部署本地github开源项目。博主走了无数弯路,最后精化下来的步骤,超级详细!&a…

godot4.2 + GDextension c++在 vs code 中断点调试配置

游戏开发中如果做不到自己编写的代码做断点调试,无不是瞎子摸象,特别是C这么底层的语言。这2天开始在VS studio中折腾,一直折腾不出结果,几次想要放弃GODOT。最终今天在VS code中搞定了这断点调试C代码。 在上一篇文章我已经做好了…

LabVIEW调用外部DLL(动态链接库)

LabVIEW调用外部DLL(动态链接库) LabVIEW调用外部DLL(动态链接库)可以扩展其功能,使用外部库实现复杂计算、硬件控制等任务。通过调用节点(Call Library Function Node)配置DLL路径、函数名称和…

【机器学习】集成语音与大型语音模型等安全边界探索

探索集成语音与大型语言模型(SLMs)的安全边界 一、引言二、SLMs的潜在安全风险三、对抗性攻击与越狱实验四、提高SLMs安全性的对策五、总结与展望 一、引言 近年来,随着人工智能技术的飞速发展,集成语音与大型语言模型&#xff08…

Java筑基—String类

这里写目录标题 一、字符串的拼接二、获取字符串长度三、字符串转换四、去除前后空白字符五、比较字符串是否相等六、比较字符串是否包含七、字符串是否以某些开始、结尾八、字符串的替换九、字符串的转换十、空串和NULL串 一、字符串的拼接 Java语言允许使用 号拼接两个字符…

WordPress Country State City Dropdown CF7插件 SQL注入漏洞复现(CVE-2024-3495)

0x01 产品简介 Country State City Dropdown CF7插件是一个功能强大、易于使用的WordPress插件,它为用户在联系表单中提供国家、州/省和城市的三级下拉菜单功能,帮助用户更准确地填写地区信息。同时,插件的团队和支持也非常出色,为用户提供高质量的服务。 0x02 漏洞概述 …

Mybatis-plus 更新或新增时设置某些字段值为空

方式一 在实体中设置某个字段为的注解中 TableField(updateStrategy FieldStrategy.IGNORED)private Date xxxxxxTime;通过这种方式会指定更新时该字段的策略,通常情况下updateById这种会根据字段更新,通常都会判断null 以及空值 指定 updateStrategy …

每日一题《leetcode--LCR 021.删除链表的倒数第N个结点》

https://leetcode.cn/problems/SLwz0R/ 这道题我们可以设一个哨兵位,然后把要遍历链表的结点指向该哨兵位。最后用for循环将指针指向要删除结点的前一个。 struct ListNode* removeNthFromEnd(struct ListNode* head, int n){struct ListNode* dummy malloc(sizeof…

flink left join消费kafka数据

left join会产生回车流数据 在控制台数据 import com.sjfood.sjfood.gmallrealtime.app.BaseSQLAPP; import com.sjfood.sjfood.gmallrealtime.util.SQLUtil; import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment; import org.apache.flink.table.…