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点之间的内存使用率数据。

 

目录
相关文章
|
2月前
|
监控 Unix Linux
Linux系统工具
Linux系统工具
49 6
|
2月前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
61 5
Linux系统之安装Ward服务器监控工具
|
2月前
|
JSON JavaScript Linux
Linux系统之安装cook菜谱工具
【10月更文挑战第15天】Linux系统之安装cook菜谱工具
39 2
Linux系统之安装cook菜谱工具
|
1月前
|
缓存 监控 Linux
Linux性能分析利器:全面掌握perf工具
【10月更文挑战第18天】 在Linux系统中,性能分析是确保软件运行效率的关键步骤。`perf`工具,作为Linux内核自带的性能分析工具,为开发者提供了强大的性能监控和分析能力。本文将全面介绍`perf`工具的使用,帮助你成为性能优化的高手。
100 1
|
1月前
|
缓存 监控 Linux
掌握Linux性能分析:深入探索perf工具
【10月更文挑战第26天】
32 1
|
2月前
|
Web App开发 监控 JavaScript
一些常用的 Vue 性能分析工具
【10月更文挑战第2天】
106 1
|
3月前
|
SQL 缓存 关系型数据库
MySQL高级篇——性能分析工具
MySQL的慢查询日志,用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long-query_time值的SQL,则会被记录到慢查询日志中。long_query_time的默认值为 10,意思是运行10秒以上(不含10秒)的语句,认为是超出了我们的最大忍耐时间值。它的主要作用是,帮助我们发现那些执行时间特别长的 SOL 查询,并且有针对性地进行优化,从而提高系统的整体效率。当我们的数据库服务器发生阻塞、运行变慢的时候,检查一下慢查询日志,找到那些慢查询,对解决问题很有帮助。
MySQL高级篇——性能分析工具
|
3月前
|
人工智能 监控 Shell
常用的 55 个 Linux Shell 脚本(包括基础案例、文件操作、实用工具、图形化、sed、gawk)
这篇文章提供了55个常用的Linux Shell脚本实例,涵盖基础案例、文件操作、实用工具、图形化界面及sed、gawk的使用。
681 2
|
3月前
|
Linux
linux之centos安装dataease数据报表工具
linux之centos安装dataease数据报表工具
|
7月前
|
监控 Java 开发者
Java一分钟之-Java性能分析与调优:JProfiler, VisualVM等工具
【5月更文挑战第21天】本文介绍了Java性能优化的两个利器——JProfiler和VisualVM。JProfiler通过CPU Profiler、内存分析器和线程视图帮助解决过度CPU使用、内存泄漏和线程阻塞问题;VisualVM则聚焦于GC行为调整和类加载优化,以减少内存压力和提高应用性能。使用这些工具进行定期性能检查,是提升Java应用效率的关键。
190 0