nmon - 性能监控利器介绍

关于nmon

nmon 是一款小巧的系统监控程序(只有5000行代码),可以用来对CPU、磁盘、内存等资源指标来做实时监控。
之前在做系统性能优化工作时用得较多,觉得非常不错,于是在这里给大家介绍下用法。

如何使用

下载nmon

nmon的代码托管在sourceForge,下载地址

执行程序

chmod +x nmon
./nmon

接下来,按"c"、"m"、"d"可以看到具体的监控数据,比如下图:

整个工具使用还是非常简单的..

生成图表

数据文件

nmon支持将监控过程中的数据输出为xxx.nmon文件。

执行以下命令可以令nmon 将结果输出到数据文件

nmon -s 3 -c 100 -F result.nmon

参数说明

-s 间隔秒数;
-c 监控点数;
-F 输出到数据文件;

也可以定时输出到目录,如下:

crontab -e

0 0 * * *  nmon -s 300  -c 288 -f -m /data/nmon > /dev/null 2>&1

参数说明

-f 表示将数据生成到带时间戳的文件(<hostname>_YYYYMMDD_HHMM.nmon)
-m 数据文件生成的目录 

更多的选项可以通过nmon -h获得

接下来,生成图表需要依赖于另外的工具,目前比较常用的是以下两个:

nmon analyzer

nmon analyzer是IBM工程师(Stephen Atkins)开发的一款基于Excel生成图表的工具,下载地址

使用方式:

  1. 打开 **nmon_analyser_v34a.xls;
  2. 点击analyse nmon data按钮,选择nmon数据文件;
  3. 指定生成结果文件路径。

最终生成的文件效果如下:


更多的介绍可以参考这里

nmonchart

这也是官方推荐的一款工具,nmonchart是一个shell脚本,通过对nmon数据文件进行解析后,会输出一个带各种图表的html页面。
下载地址

执行以下命令,将nmon数据文件转换为html文件:

chmod +x nmonchart
./nmonchart result.nmon result.html

PS: 部分linux os可能不支持 ksh,可以通过编辑nmonchart脚本,将/usr/bin/ksh 改为/usr/bin/sh

使用浏览器打开 result.html文件,会看到如下图表:


值得一提的是,nmonchart的图表是基于强大的google chart制作的。
需要浏览器支持HTML5,同时还需要联网使用(需使用获得 google的在线JS)

相关参考

nmon-screenshot
nmonchart-wiki

posted @ 2018-11-27 18:33 美码师 阅读(...) 评论(...) 编辑 收藏