Linux的SAR命令实现日常系统性能监控 (linux用sar命令监控日报)

在日常系统运维中,了解系统的性能表现是非常重要的。Linux作为一种稳定且高性能的操作系统,为我们提供了许多可用的工具来监控系统性能。其中,SAR命令是最常用的命令之一。

SAR是System Activity Reporter的缩写,它可以收集并展示一系列系统性能相关的信息,包括CPU使用率、内存使用率、网络流量、磁盘空间使用率、系统负载等。SAR命令使用方便、数据准确,所以经常被使用来进行系统性能监控和故障排查。

在本文中,我们将介绍如何使用SAR命令来实现日常系统性能监控,并深入了解SAR命令的工作机制和基本用法。

之一部分:SAR命令的工作原理

SAR命令通过收集系统性能数据来显示系统的性能表现。SAR可以在Linux系统中每隔一定时间采集系统性能数据,这些数据存储在SA文件中。SA文件是一个二进制文件,它包含了系统性能数据的记录。在SA文件中,每个数据的记录以特定时间戳的方式存储。

SA文件可以被SAR命令使用来生成报告,以便在后续的日期上查看系统性能数据的历史记录。您可以针对不同的间隔参数来选择查看每小时、每日、每周等指定日期的数据。这样,您可以按照特定的时间段来了解系统的性能表现。

第二部分:SAR命令的基本用法

SAR命令是一种非常强大的工具,可以提供各种性能数据的报告。下面将介绍SAR命令最常用的命令行参数及其用法。

1. CPU使用率

SAR命令可以报告CPU的使用率,可以查看整个系统的CPU使用率、每个CPU的使用率和进程级的CPU使用率。以下是一些常用的CPU使用率相关的命令行参数和用法:

· -u:用于报告CPU使用率

· -P:用于在指定的CPU上报告CPU使用率

· -p:用于报告进程级的CPU使用率

2. 磁盘使用率

SAR命令可以报告硬盘或分区的使用率,以及实时磁盘活动情况。以下是一些常用的磁盘使用率相关的命令行参数和用法:

· -b:用于报告I/O活动情况,包括读取、写入和块传输率。

· -d:用于报告磁盘使用率

· -p:用于报告指定进程的磁盘使用率

3. 内存使用率

SAR命令可以报告系统内存使用率,包括实时的内存使用情况和内存使用趋势。以下是一些常用的内存使用率相关的命令行参数和用法:

· -r:用于报告内存使用率

· -W:用于报告内存交换

4. 网络活动

SAR命令可以报告网络流量、连接等网络相关信息。以下是一些常用的网络活动相关的命令行参数和用法:

· -n:用于报告网络活动,包括TCP、UDP、IP等协议的连接状态等

· -S:用于报告TCP的平均使用时间

· -u:用于报告UDP的使用情况

第三部分:SAR命令的实际使用

现在是我们将SAR命令应用到实际环境中的时候了。在使用SAR命令之前,需要确保SAR工具已经在系统中安装完成。

通常情况下,SAR工具包随着操作系统的安装而安装。如果没有安装,您可以通过命令行安装来完成。以下是一个示例,用于在Debian或Ubuntu Linux上安装SAR软件包。

$ sudo apt-get update

$ sudo apt-get install sysstat

对于Red Hat或Fedora Linux,可以使用以下命令来安装:

$ sudo yum install sysstat

现在安装了SAR工具以后,让我们开始使用SAR命令来监控系统的性能表现。

1. 打开终端

打开终端并输入下面的命令来运行SAR命令。为了简单起见,我们将仅使用-u选项。它将返回一些有关CPU使用率的数据,默认情况下在每秒钟采集一次。

$ sar -u

2. 观察输出结果

在终端中,您将会看到以下结果:

Linux 4.19.0-12-amd64 (localhost) 05/29/21 _x86_64_ (4 CPU)

03:00:01 PM CPU %user %nice %system %iowt %steal %idle

03:10:01 PM all 3.67 0.00 1.08 0.00 0.00 95.25

03:20:01 PM all 2.14 0.00 0.60 0.00 0.00 97.26

03:30:01 PM all 4.22 0.00 1.16 0.00 0.00 94.62

这张表中展示了我们关注的一些项目:CPU使用率在采样过程中随时间的变化(之一列),CPU在命令行中指定的各个方面的占用情况(第二列),以及用户、系统、Idle等项目的占用情况(第三行)。

在上述示例中,%user列代表系统在总处理时间中用户程序的占用率,%system列代表系统内核占用时间的百分比,%idle列代表CPU空闲的百分比。

3. 参考SAR的手册

SAR的手册包含了SAR命令的所有选项和相关说明。可以通过以下命令来访问SAR命令的手册。

$ man sar

手册中列出了遵循SAR命令行的所有选项和相关说明,所有选项都应该被解释清楚。

结论

通过使用SAR命令,我们可以在Linux系统上获得详细的系统性能数据。这些数据可以用于监测系统健康状况,识别问题,并根据这些信息进行必要的性能调整。SAR命令可通过定期性能数据所提供的系统性能快照,为运维人员有效的故障排查和预测提供信息,充分体现了其重要性和实用性。

相关问题拓展阅读:

如何用命令检查Linux服务器性能

1、查看物理cpu个数:

cat /proc/cpuinfo |grep “physical id”|sort|uniq|wc -l

2、查看每个物理cpu中的core个数:

cat /proc/cpuinfo |grep “cpu cores”|wc -l

3、逻辑cpu的个数:

cat /proc/cpuinfo |grep “processor”|wc -l

物理cpu个数*核数=逻辑cpu个数(不支持超线程技术的情况下)

Linux下的Top命令是一个性能监控程序,许多系统管理员常常用它来监控Linux性能,在许多Linux或者类Unix操作系统里都有这个命令。Top命令用于按一定的顺序显示所有正在运行而且处于活动状态的实时进程,而且会定期更新显示结果。这条命令显示了CPU的使用率、内存使用率、交换内存使用大小、高速缓存使用大小、缓冲区使用大小,进程PID、所使用命令以及其他。它还可以显示正在运行进程的内存和CPU占用多的情况。对系统管理员来说,top命令式是一个非常有用的,它可用于监控系统并在需要的时候采取正确的处理动作。

命令需求网页

linux中查看虚拟内存和cpu占用率的命令是什么

linux查看虚拟内存和CPU占用率主要有以下命令:

top

free

cat /proc/meminfo

cat /proc/cpuinfo

# dmidecode |grep -A16 “Memory Device” | more 查看内存频率

========================================================================================

top的基本视图,我们来结合这个视图讲解各个数据的含义。

之一行:

10:01:23 — 当前系统时间

days, 14:29 — 系统已经运行了126天14小时29分钟(在这期间没有重启过)

2 users — 当前有2个用户登录系统

load average: 1.15, 1.42, 1.44 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。

load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。

第二行:

Tasks — 任务(进程),系统现在共有183个进程,其中处于运行中的有1个,182个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。

第三行:cpu状态

6.7% us — 用户空间占用CPU的百分比。

0.4% sy — 内核空间占用CPU的百分比。

0.0% ni — 改变过优先级的进程占用CPU的百分比

92.9% id — 空闲CPU百分比

0.0% wa — IO等待占用CPU的百分比

0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比

0.0% si — 软中断(Software Interrupts)占用CPU的百分比

在这里CPU的使用比率和windows概念不同,如果你不理解用户空间和内核空间,需要充充电了。

第四行:内存状态

k total — 物理内存总量(8GB)

k used — 使用中的内存总量(7.7GB)

k free — 空闲内存总量(530M)

k buffers — 缓存的内存量 (79M)

第五行:swap交换分区

k total — 交换区总量(2GB)

k used — 使用的交换区总量(2.5M)

k free — 空闲交换区总量(2GB)

k cached — 缓冲的交换区总量(4GB)

计算可用内存数,这里有个近似的计算公式:第四行的free + 第四行的buffers + 第五行的cached,按这个公式此台服务器的可用内存:530668+79236+= 4.7GB。

对于内存监控,在top里我们要时刻监控第五行swap交换分区的used,如果这个数值在不断的变化,说明内核在不断进行内存和swap的数据交换,这是真正的内存不够用了。

第六行是空行

第七行以下:各进程(任务)的状态监控

PID — 进程id

USER — 进程所有者

PR — 进程优先级

NI — nice值。负值表示高优先级,正值表示低优先级

VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

SHR — 共享内存大小,单位kb

S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程

%CPU — 上次更新到现在的CPU时间占用百分比

%MEM — 进程使用的物理内存百分比

TIME+ — 进程使用的CPU时间总计,单位1/100秒

COMMAND — 进程名称(命令名/命令行)

多U多核CPU监控

在top基本视图中,按键盘数字“1”,可监控每个逻辑CPU的状况:

==============================================================

一般我们查看系统性能主要是在以下几个方面

1.用户使用CPU情况 展现为 %user

2.系统使用CPU情况 展现为 %sys

3.wio或iowait

展现为 %iowait 进程由于等待磁盘IO而使CPU处于空闲状态的比率

4.CPU的空闲率

5.CPU上下文的交换的比率,也有说明为CPU上下文的切换。即内存和寄存器中数据的切换

6.nice 这个还不是很明白是啥意思

7.real-time 还是未知

8.运行队列的长度

9.平均负载

二 常用命令

1.mpstat

2.top

3.vmstat

4.sar

5.iostat

6.uptime

top,free,cat /proc/meminfo,cat /proc/cpuinfo。

# dmidecode |grep -A16 “Memory Device” | more 

查看内存使用情况:cat /proc/meminfo,查看CPU使用情况:cat /proc/cpuinfo。

在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要。在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况。

运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 — 用基于 top 的命令,可以控制显示方式等等。退出 top 的命令为 q (在 top 运行中敲 q 键一次)。

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的

任务管理器

可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:$ top -u oracle。

扩展资料:

一、查看内存占用:

1、free

# free -m。

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

# free -h。

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

# free -t。

以总和的形式查询内存的使用信息。

# free -s 5。

周期性的查询内存使用信息。

每5秒执行一次命令。

二、查看CPU使用情况:

1、top。

top后键入P看一下谁占用更大。

# top -d 5。

周期性的查询CPU使用信息。

每5秒刷新一次。

2、ps auxw(查看本机的进程所占cpu和mem的百分比情况)。

使用”ps auxw” 可以查看到本机的进程所占cpu和mem的百分比情况。

# ps auxw | head -1

%CPU 进程的cpu占用率。

%MEM 进程的内存占用率。

3、查看本机所有进程的CPU占比之和。

# cat cpu_per

.sh

三、查看cpu信息(信息记录在/proc/cpuinfo中)

# 总核数 = 物理CPU个数 X 每颗物理CPU的核数。

# 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X

超线程

数。

虚拟内存。。。linux没这玩意儿,只有swap分区(虽然差不多一样)

free 看实际内存和swap分区使用率

top 看cpu占用率

top

free

cat /proc/meminfo

cat /proc/cpuinfo

内存: free

怎么使用Linux命令查看CPU使用率

sar命令,比如: sar 1 10

或者top命令

关于linux用sar命令监控日报的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » Linux的SAR命令实现日常系统性能监控 (linux用sar命令监控日报)