使用 SAR 进行简单的系统监视.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用 SAR 进行简单的系统监视.doc

  使用 SAR 进行简单的系统监视   用户总是在出现性能问题之后才想到它们。为什么有些问题以前并不重要,而现在却变得重要了呢?,如果忽略这样的问题,那么问题就变成了系统在出现所谓的问题时状态如何呢?。通过周期性地获取性能快照和查看数据,您就离确定问题的原因并创建相应的解决方案更近了一步。   收集数据   您的系统捆绑了 SAR 实用程序套件(事实上,大多数版本的 UNIXreg; 都安装了 SAR),但可能还没有启用。要启用 SAR,必须通过 cron 工具以周期性的间隔运行某些实用程序。在以 root 用户身份运行时,使用 crontab -e 命令,然后提供如清单 1 所示的配置。   清单 1. 以 root 用户运行 crontab 来启用 SAR 集合 # Collect measurements at 10-minute intervals 0,10,20,30,40,50  * * * *  /usr/lib/sa/sa1 # Create daily reports and purge old files 0         0 * * *  /usr/lib/sa/sa2 -A   第一个命令 sa1,是调用 sadc 以将性能数据收集到二进制日志文件中的一个 Shell 脚本。sa1 命令还确保了每天都使用不同的文件,我将在时间是最重要的部分中对这一点进行解释。每隔十分钟运行一次该命令,这是粒度和系统性能影响之间的折衷办法。   第二个命令 sa2,是将当日二进制日志文件中所有的数据转储到文本文件的另一个 Shell 脚本,然后它将清除七天之前的所有日志文件。参数 -A 指定了从二进制文件中提取哪些数据转储到文本文件中。尽管可以阅读文本文件以查看系统该日的状态,但我将介绍如何更精确地查询二进制日志文件。   提取有用的信息   已经收集到了相应的数据,但是必须通过查询才能使其更有价值。不带选项运行 sar 命令,这将生成关于当日 CPU 使用情况的基本统计信息。清单 2 显示了不带任何选项的 sar 命令的输出结果。(在不同的平台中,可能会看到不同的列名。在一些 UNIX 版本中,sadc 命令将根据可用的信息来收集不同的数据。)这里的示例来自于 Sun Solaris 10,无论使用什么平台都是类似的,但列名可能会稍有不同。   清单 2. sar 的缺省输出(显示了 CPU 使用情况) -bash-3.00$ sar SunOS unknown 5.10 Generic_118822-23 sun4u  01/20/2006 00:00:01  %usr  %sys  %wio  %idle 00:10:00    0    0    0   100 . cut ... 09:30:00    4   47    0   49 Average    0    1    0   98   sar 命令输出中的每一行都是一项单独的度量,并且在最左边的列中显示了时间戳。其他列中则存放了相应的数据。(根据命令行所使用参数的不同,这些列也会有所不同。)在清单 2 中,CPU 使用情况被分解为四种类别:   %usr: CPU 花费在用户进程(如应用程序、Shell 脚本或与该用户进行的交互)上的时间的百分比。   %sys: CPU 用来执行核心任务的时间的百分比。在本示例中该数字比较大,这是因为我正从核心随机数生成器获取数据。   %wio: CPU 等待块设备(如磁盘)输入或输出的时间的百分比。   %idle: CPU 未进行任何有用操作的时间的百分比。   最后一行是所有数据点的平均值。然而,因为大多数系统都会在忙时间段后经历空闲时间段,所以平均值并不能反映完整的情况。   监视磁盘活动   同时,对磁盘活动也进行了监视。高磁盘使用率意味着,从磁盘请求数据的应用程序更有可能会被阻塞(暂停),直到磁盘为该进程做好准备。通常,解决方案涉及到将文件系统拆分到不同的磁盘或阵列。然而,第一步是要知道出现了问题。   sar -d 的输出显示了一个度量时间段内各种与磁盘相关的统计数据。为了更加简洁,清单 3 仅显示了硬盘驱动器的活动。   清单 3. sar -d 的输出(显示了磁盘活动) $ sar -d SunOS unknown 5.10 Generic_118822-23 sun4u  01/22/2006 00:00:01  device    %busy  avque  r+w/s blks/s avwait avserv . cut ... 14:00:02  dad0       31   0.6   78  16102   1.9   5.3   

文档评论(0)

ggkkppp + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档