Linux性能分析工具sar篇

简介: Linux性能分析工具sar篇

简介


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

我们可以使用sar命令来获得整个系统性能的报告。这有助于我们定位系统性能的瓶颈,并且有助于我们找出这些烦人的性能问题的解决方法。

Linux 内核维护着一些内部计数器,这些计数器包含了所有的请求及其完成时间和 I/O 块数等信息,sar命令从所有的这些信息中计算出请求的利用率和比例,以便找出瓶颈所在。

 

安装使用


sar工具通常是通过安装sysstat包来获取的。在Ubuntu系统中,可以使用以下命令来安装sysstat包:

sudo apt-get install sysstat

安装完成后,就可以使用sar命令来查看系统的性能指标了。sar命令的常用选项如下:

  • -u:CPU使用率
  • -r:内存使用情况
  • -b:磁盘I/O情况
  • -n:网络流量情况
  • -q:系统负载情况

以下是一些常用的sar命令实例:

  1. 查看CPU使用率:
sar -u 1 3
每隔1秒钟记录一次系统负载情况,共记录3次,然后输出统计结果。

image.png

  1. 查看内存使用情况:
sar -r
  1. 查看磁盘I/O情况:
sar -b
  1. 查看网络流量情况:
sar -n DEV
  1. 查看系统负载情况:
sar -q

以上命令将会输出系统的性能指标,可以根据需要自行选择查看。另外,sar命令还支持输出到文件,可以使用以下命令将输出保存到文件中:

sar -u -o cpu.log

这将会将CPU使用率的输出保存到cpu.log文件中。

 

实时记录


sar工具默认是以系统启动时间为基准来记录性能数据的,如果想要让sar实时记录系统性能数据,可以使用以下命令:

sar -u 1 10

这个命令将会每秒钟记录一次CPU使用率,记录10次后自动退出。可以根据需要修改参数,比如记录内存使用情况可以使用以下命令:

sar -r 1 10

这个命令将会每秒钟记录一次内存使用情况,记录10次后自动退出。

如果想要将实时记录的数据保存到文件中,可以在命令中加上-o选项,比如:

sar -u 1 10 -o cpu.log

这个命令将会每秒钟记录一次CPU使用率,记录10次后将数据保存到cpu.log文件中。

另外,如果想要让sar工具在系统启动时自动记录性能数据,可以将以下命令添加到/etc/rc.local文件中:

/usr/lib64/sa/sa1 1 1 &
/usr/lib64/sa/sa2 -A &

这样每隔一分钟就会记录一次性能数据,并保存到/var/log/sa目录下。如果需要修改记录的时间间隔,可以修改命令中的参数。

 

查看指定时间段的内存使用率

sar -r -s HH:MM:SS -e HH:MM:SS

其中,-r选项表示查看内存使用率,-s选项指定开始时间,-e选项指定结束时间,HH:MM:SS表示具体的时间。注意,-s和-e选项必须同时指定。

例如,要查看2022年1月1日下午2点到下午3点之间的内存使用率,可以使用以下命令:

sar -r -s 14:00:00 -e 15:00:00

这个命令将会输出2022年1月1日下午2点到下午3点之间的内存使用率数据。

 

查看指定时间段的CPU使用率

sar -u -s HH:MM:SS -e HH:MM:SS

其中,-u选项表示查看CPU使用率,-s选项指定开始时间,-e选项指定结束时间,HH:MM:SS表示具体的时间。注意,-s和-e选项必须同时指定。

例如,要查看2022年1月1日下午2点到下午3点之间的CPU使用率,可以使用以下命令:

sar -u -s 14:00:00 -e 15:00:00

这个命令将会输出2022年1月1日下午2点到下午3点之间的CPU使用率数据。

sar -r -s 14:00:00 -e 15:00:00

这个命令将会输出2022年1月1日下午2点到下午3点之间的内存使用率数据。

 

目录
相关文章
|
4月前
|
安全 Linux Shell
四、Linux核心工具:Vim, 文件链接与SSH
要想在Linux世界里游刃有余,光会“走路”还不够,还得配上几样“高级装备”。首先是Vim编辑器,它像一把瑞士军刀,让你能在命令行里高效地修改文件。然后要懂“软硬链接”,软链接像个快捷方式,硬链接则是给文件起了个别名。最后,SSH是你的“传送门”,不仅能让你安全地远程登录服务器,还能用scp轻松传输文件,设置好密钥更能实现免-密登录,极大提升效率。
422 4
|
8月前
|
Linux 开发工具
7种比较Linux中文本文件的最佳工具
7种比较Linux中文本文件的最佳工具
7种比较Linux中文本文件的最佳工具
|
4月前
|
Unix Linux 程序员
Linux文本搜索工具grep命令使用指南
以上就是对Linux环境下强大工具 `grep` 的基础到进阶功能介绍。它不仅能够执行简单文字查询任务还能够处理复杂文字处理任务,并且支持强大而灵活地正则表达规范来增加查询精度与效率。无论您是程序员、数据分析师还是系统管理员,在日常工作中熟练运用该命令都将极大提升您处理和分析数据效率。
381 16
|
4月前
|
安全 Linux iOS开发
SonarQube Server 2025 Release 5 (macOS, Linux, Windows) - 代码质量、安全与静态分析工具
SonarQube Server 2025 Release 5 (macOS, Linux, Windows) - 代码质量、安全与静态分析工具
242 0
SonarQube Server 2025 Release 5 (macOS, Linux, Windows) - 代码质量、安全与静态分析工具
|
6月前
|
缓存 监控 Linux
Linux系统性能调优技巧和相关工具
Linux 作为一种应用应展和系统服务的优选操作系统,在处理性能和端到端点评估上持有出色表现。但是,在处理进程或系统处于低效状态时,性能调优就显得十分重要。本文将探讨一些 Linux 系统性能调优的常用技巧,并介绍相关工具
183 0
Linux系统性能调优技巧和相关工具
|
6月前
|
Linux 数据安全/隐私保护 iOS开发
推荐Linux环境下效能优良的双向文件同步工具
综合上述条件,对于Linux环境下的双向文件同步需求,Unison 和 Syncthing 是两个非常出色的选择。它们都有良好的社区支持和文档资源,适用于不同规模的环境,从个人使用到商业部署。Unison 特别适合那些需要手动干预同步过程、需要处理文件冲突解决的场景。而 Syncthing 更加现代化,适合需要自动、实时的数据同步与备份的环境。对于选择哪一个,这将取决于个人的使用场景和具体需求。
702 16
|
5月前
|
数据采集 编解码 运维
一文讲完说懂 WowKey -- WowKey 是一款 Linux 类设备的命令行(CLT)运维工具
WowKey 是一款面向 Linux 类设备的命令行运维工具,支持自动登录、批量执行及标准化维护,适用于企业、团队或个人管理多台设备,显著提升运维效率与质量。
|
8月前
|
Ubuntu 搜索推荐 Linux
详解Ubuntu的strings与grep命令:Linux开发的实用工具。
这就是Ubuntu中的strings和grep命令,透明且强大。我希望你喜欢这个神奇的世界,并能在你的Linux开发旅程上,通过它们找到你的方向。记住,你的电脑是你的舞台,在上面你可以做任何你想做的事,只要你敢于尝试。
426 32
|
9月前
|
数据采集 运维 安全
Linux设备命令行运维工具WowKey问答
WowKey 是一款用于 Linux 设备运维的工具,可通过命令行手动或自动执行指令剧本,实现批量、标准化操作,如健康检查、数据采集、配置更新等。它简单易用,只需编写 WIS 指令剧本和 APT 帐号密码表文件,学习成本极低。支持不同流派的 Linux 系统,如 RHEL、Debian、SUSE 等,只要使用通用 Shell 命令即可通吃Linux设备。