Linux性能分析工具重点推荐 – nmon analyser
Kaya 发表于 os2ora.com
除了上一篇文章提到的collectl, IBM出品的nmon其实也是一个不错的Linux上的性能监控工具,在写这篇文章时顺带google了nmon一把,惊喜地发现nmon也open source了。还是以sourceforge为根据地,网址是http://nmon.sourceforge.net.
nmon在监控数据与易用性方面几乎与collectl不相上下,对监控单台机器的系统性能还是不错的选择的。不过,nmon没有如collectl一样的网络接口,如果用来它实时监控几十台机器,可能要开几十个窗口,这基本上是不可能的事情。
下面是nmon官方网站最新版本的一个截图:
不过,nmon却做出了另一个突出贡献。这就是推出了一个nmon analyser,而且以开放源代码的形式提供,它的目的是实现对nmon产生的历史性能数据的分析,产生一系列的图表。
以图表分析性能数据的作用是很明显的。密密麻麻的数字,也许只有经过一定的聚合计算,人们才能大致地了解数据的含义,说得忽悠人一点,那就是数据挖掘。不过,聚合计算有个问题,就是会把系统可能出现的瓶颈掩盖掉,举个Jonathan Lewis打过的比方,一个人头部放在寒冰里,脚放在烈火中,按平均值理论,这个人会感觉得很舒服。而利用图形的方式对数据进行描述,就不会导致数据的丢失,而且会使数据特征一目了然。
还是一个来自官方网站上nmon analyser分析结果的一个截图:
nmon analyser其实就是一个Excel文件,里面嵌套了VBA脚本用来分析nmon产生的文本文件并产生一系列的图形报表。深入地分析这些脚本,你会发现,这个analyser其实是一个极好的框架,很容易利用这个analyser来分析自己的数据,而不局限于nmon产生的文件。举个例子,可以用nmon analyser来产生由collectl产生的文件。这当然需要对nmon analyser的脚本做一定的改写,下面是一个例子:
这里可能要做更深一步的说明,无论是nmon或者collectl,都提供了一种把它们做为后台daemon进程对系统进行监控并产生监控日志的功能。这些监控日志就可以被用于对系统的历史性能的分析。collectl甚至还做了一个功能,根据用户指定的时间跨度,自动地从日志里面抽取出这段时间里的历史数据。analyser的作用就在于分析这些日志,并产生相应的分析报告和图表。
因此,从某种程度上说,nmon anlayser为我们提供了一个框架,利用这个框架,我们可以利用起Excel强大的数据分析与绘图功能,实现对文本文件数据的自动处理。这才是本文要说明的最终结论。

最近评论