sar 命令示例
此外,我们可以在 sar 中使用各种命令选项来显示添加信息或者控制程序的操作。
下表列出了一些更常见的选项。
选项 | 显示统计信息 |
---|---|
-A | All |
-b | I/O |
-B | swap |
-d | I/O for each block device on the system |
-n ALL | All network statistics. Instead of ALL, you can use DEV (device), NFS (network file system), SOCK (sockets), and additional options to display subsets of network data. |
-q | Processor queue (cache) |
-r | Memory and swap |
-u | CPU (the default when no options are specified) |
-v | Kernel |
-W | Simplified swap statistics (pages swapped in and out per second only) |
示例 1:查看 CPU 统计信息
使用以下命令查看基本 CPU 统计信息,包括等待时间:
# sar -u 1 10
这应该会产生类似于以下屏幕截图的输出:
示例 2:查看内存统计信息
使用以下命令查看可用内存统计信息:
# sar -r 1 10
这应该产生以下输出:
示例 3:查看 I/O 统计信息
在跟踪性能问题时,查看单个块设备的 IO 统计信息会很有帮助。
我们可以使用以下命令通过 sar 查看这些统计信息:
# sar -b 1 10
这将产生类似于以下屏幕截图的输出:
示例 4:查看磁盘设备状态
使用以下命令每 1 秒显示一次磁盘设备状态:
# sar -d 1 5
安装sar
如果系统上尚未安装 sar,让我们来看看如何安装和使用它。
- 使用以下命令为基于 Debian 的发行版安装 sysstat 包:
# sudo apt-get install sysstat
对于基于 RHEL 的发行版,我们还可以使用以下命令:
# sudo yum install sysstat
- 使用我们喜欢的文本编辑器编辑 /etc/default/sysstat 文件并更改以下值:
ENABLED="false"
修改为
ENABLED="true"
- 使用以下命令重新启动 sysstat 服务:
# service sysstat restart
sar命令用法
sar 命令本身的典型用途是显示实时数据或者查看日志文件之一的内容。
如果单独输入 sar,该命令会输出当天的日志文件。
我们可以使用以下命令获取当前数据:
# sar interval iterations
其中:
interval 是以秒为单位的间隔。
迭代次数是制作和输出统计信息的次数。
一个例子如下所示。
系统活动报告器 sar ( System Activity Reporter ) 可以显示许多关于计算机的信息,并将这些信息保存到文件中以供以后分析。
该程序及其相关工具是 sysstat 包的一部分。
安装 sysstat 时,会在 /etc/cron.d/ 中添加一个名为 sysstat 的文件以自动调用 sar。
在 Debian 和大多数其他发行版上,该程序计划以 10 分钟的间隔和每天 23:59 运行一次。
根据发行版,不会直接调用 sar,而是运行其两个默认脚本之一 sa1 或者 sa2.
这些脚本收集各种统计信息并接受不同类型的输入值,这些输入值在 /etc/default/sysstat 配置文件中进行配置。
sar 收集的性能数据被记录到一个文件中。
默认情况下,这些文件保存在 /var/log/sa 目录中。
在该目录中,我们可以找到名为 sa1. sa2. sa3 等的文件,其中的数字代表月份中的第几天。
因此,使用此方案,可以查看过去一个月的数据,直到该数据被新数据覆盖。