安装 sysstat

首先,安装提供 sar 实用程序的“sysstat”。

# apt-get install sysstat       ### Debian-based distributions      
# yum install sysstat           ### RedHat Based distribution

各种 linux 发行版的历史数据存储在以下目录中:

  1. Red Hat、Fedora、CentOS 和 Scientific Linux 应该使用 /var/log/sa 目录
  2. Debian、Mint 和 Ubuntu 用户应该使用 /var/log/sysstat 目录

默认情况下,每 10 分钟收集一次 sar 统计信息。
使用 /etc/cron.d/sysstat 中配置的简单 cron 作业收集数据。
可以修改此作业以根据需要频繁地收集数据。
下面提供了示例 /etc/cron.d/sysstat 文件。

# cat /etc/cron.d/sysstat
# Run system activity accounting tool every 10 minutes
*/10 * * * * root /usr/lib64/sa/sa1 1 1
# 0 * * * * root /usr/lib64/sa/sa1 600 6 &
# Generate a daily summary of process accounting at 23:53
53 23 * * * root /usr/lib64/sa/sa2 -A
如何在 Linux 中使用 sar 查看过去的性能

有许多工具/实用程序可用于分析当前系统性能。
但是我们如何衡量历史系统性能呢?
为此,我们可以使用系统活动报告 (SAR) 工具。
使用 sar 工具,我们将能够回顾一段时间并查看服务器的运行情况。

在这篇文章中,我们将看到如何安装和使用 sysstat 工具;因此,允许我们检查历史系统统计信息。

on  it road.com

收集历史 sar 数据

  1. 使用 sar 可以轻松获取实时 sar 数据。
    默认情况下,sar 在 CPU 模式下运行。
    只需使用命名的命令,我们就会收到当天每 10 分钟的 CPU 活动示例。
# sar
Linux 2.6.32-504.el6.x86_64 (onitroad)   09/28/2018      _x86_64_        (16 CPU)
12:00:01 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
12:10:01 AM     all      7.28      0.00      2.94      0.02      0.00     89.77
12:20:01 AM     all      7.16      0.00      2.47      0.02      0.00     90.35
12:30:01 AM     all      6.96      0.00      2.43      0.01      0.00     90.59
12:40:01 AM     all      6.92      0.00      2.42      0.01      0.00     90.64
...
  1. 假设我们想分析过去某个时间的系统性能。
    例如,查看上午 10 点之间的系统性能。
    到 12 点当应用程序团队在他们的应用程序中遇到缓慢时。
# sar -r -s 10:00:00 -e 12:00:00

sar 使用 -s 参数指定数据提取的开始时间,使用另一个参数 (-e) 设置结束时间。
这些参数必须以 HH:MM:SS 格式写入,否则 sar 将忽略它们并出现错误。
-r 参数用于显示内存使用数据。

  1. 在基于 RedHat 的发行版的情况下,sar 历史数据存储在 /var/log/sa 目录中。
    文件只是包含每个保留日期的 sar 数据的二进制格式。
    文件以 sa 为前缀。
    因此,sa23 是该月 23 日的 sar 数据。
    例如,在 CenOS/RHEL 系统上。
# ls /var/log/sa
sa01  sa04  sa07  sa10  sa13  sa16  sa19  sa22  sa25  sa28  sar01  sar04  sar07  sar10  sar13  sar16  sar19  sar22  sar25  sar30
sa02  sa05  sa08  sa11  sa14  sa17  sa20  sa23  sa26  sa30  sar02  sar05  sar08  sar11  sar14  sar17  sar20  sar23  sar26  sar31
sa03  sa06  sa09  sa12  sa15  sa18  sa21  sa24  sa27  sa31  sar03  sar06  sar09  sar12  sar15  sar18  sar21  sar24  sar27

执行以下命令可查看当月 10 日过去的 I/O 统计信息:

# sar -f /var/log/sysstat/sa10 -b

更改 sar 历史数据保留

可以使用文件 /etc/sysconfig/sysstat 或者 /etc/sysstat/sysstat 更改历史 sar 数据保留。
将 HISTORY 参数设置更改为所需的天数以保留数据。
例如,要保留 28 天的记录,我们可以使用:

# cat /etc/sysconfig/sysstat
# sysstat-9.0.4 configuration file.
# How long to keep log files (in days).
# If value is greater than 28, then log files are kept in
# multiple directories, one for each month.
HISTORY=28
# Compress (using gzip or bzip2) sa and sar files older than (in days):
COMPRESSAFTER=31
# Parameters for the system activity data collector (see sadc bananaal page)
# which are used for the generation of log files.
SADC_OPTIONS="-S DISK"
# Compression program to use.
ZIP="bzip2"
日期:2020-09-17 00:13:58 来源:oir作者:oir