关于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生成图表的工具,下载地址
使用方式:
- 打开 **nmon_analyser_v34a.xls;
- 点击analyse nmon data按钮,选择nmon数据文件;
- 指定生成结果文件路径。
最终生成的文件效果如下:
更多的介绍可以参考这里
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)