跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 管理:常见任务 Oracle Solaris 11 Information Library (简体中文) |
自动收集系统活动数据时需要使用三个命令:sadc、sa1 和 sa2。
sadc 数据收集实用程序定期收集系统数据,并以二进制格式的文件保存数据,每 24 小时保存一个文件。可以将 sadc 命令设置为定期运行(通常每小时一次),并在系统引导到多用户模式时运行。数据文件放置在 /var/adm/sa 目录中。每个文件都命名为 sadd,其中 dd 是当前日期。命令的格式如下:
/usr/lib/sa/sadc [t n] [ofile]
该命令以 t 秒为间隔采样 n 次,两次采样之间的间隔应大于 5 秒。然后,此命令将向二进制 ofile 文件或标准输出中写入数据。
sadc 命令应在系统引导时运行,以记录自计数器重置为零以来的统计信息。为确保在引导时运行 sadc 命令,svcadm enable system/sar:default 命令会向每日数据文件中写入一条记录。
/usr/bin/su sys -c "/usr/lib/sa/sadc /var/adm/sa/sa`date +%d`"
为了生成定期记录,您需要定期运行 sadc 命令。最简单的方法是在 /var/spool/cron/crontabs/sys 文件中取消对下列行的注释:
# 0 * * * 0-6 /usr/lib/sa/sa1 # 20,40 8-17 * * 1-5 /usr/lib/sa/sa1 # 5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -i 1200 -A
sys crontab 项执行以下操作:
前两个 crontab 项可在星期一到星期五从上午 8 点到下午 5 点,每 20 分钟或每小时向 /var/adm/sa/sadd 文件写入一条记录。
第三项可从星期一到星期五每小时向 /var/adm/sa/sar dd 文件写入一条记录,并且可以包括所有 sar 选项。
可以更改这些缺省设置,以满足您的需要。
另一个 shell 脚本 sa2 可生成报告,而不是二进制数据文件。sa2 命令调用 sar 命令,并将 ASCII 输出写入报告文件。
sar 命令可用于自行收集系统活动数据,或报告 sadc 命令所创建的每日活动文件中收集的内容。
sar 命令格式如下:
sar [-aAbcdgkmpqruvwy] [-o file] t [n]
sar [-aAbcdgkmpqruvwy] [-s time] [-e time] [-i sec] [-f file]
以下 sar 命令每隔 t 秒对操作系统中的累积活动计数器进行采样,共进行 n 次。t 应大于或等于 5 秒。否则,命令本身会对样本产生影响。必须指定采样的时间间隔。否则,命令将根据第二种格式运行。n 的缺省值为 1。以下示例以 10 秒为间隔抽取两个样本。如果指定 -o 选项,则以二进制格式保存样本。
$ sar -u 10 2
有关 sar 命令的其他重要信息包括:
如果不指定采样间隔或样本数,sar 命令将从以前记录的文件中提取数据。该文件是由 -f 选项为最近一天指定的文件,或对应于最近一天的标准每日活动文件 /var/adm/sa/sa dd(缺省设置)。
-s 和 -e 选项定义报告的开始时间和结束时间。开始时间和结束时间的格式为 hh[:mm[:ss]],其中 hh、mm 和 ss 表示小时、分钟和秒。
表 11-5 sar 命令的选项
|
不使用任何选项等效于调用带 -u 选项的 sar 命令。
此版本的 sadc 命令会写入一条特殊记录,其中标记了将计数器重置为零的时间(引导时间)。
注 - 不要直接编辑 crontab 文件。而要改用 crontab -e 命令对现有 crontab 文件进行更改。
# crontab -e sys
0 * * * 0-6 /usr/lib/sa/sa1 20,40 8-17 * * 1-5 /usr/lib/sa/sa1 5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -i 1200 -A
有关更多信息,请参见 crontab(1) 手册页。