项目地址:https://github.com/mzky/nmon_to_htmlReport
github不太稳定时,可以访问这个:https://gitee.com/mirrors/nmon_to_htmlReport
备注:之前没起名,每次都得解释一下,现正式起名为easyNmon
为了方便多场景批量性能测试,用golang写了个监控程序,可以通过get url方式启动和停止nmon服务,非常适合配合Loadrunner性能测试框架使用,可以批量执行场景并生成报告
1. 从github下载项目,以下载的zip包为例,解压执行
通过unzip解压zip包:

以下文件为执行所需的文件:

通过chmod -R 755 * 附权限

2.启动监控
输入 ./monitor& 启动监控,无需安装任何插件(后缀加&为后台运行)

3. 通过添加-h参数,查看帮助
帮助的示例,默认获取本地ip地址,如使用默认端口,可直接使用

支持的url接口:

4. 默认端口8080,如需修改 加上-port 端口号:

5. 测试连通性,从浏览器进行访问,效果如图:
启动服务器性能监控

结束所有监听任务

6. 通过loadrunner启动监控和结束监控,示例:
将脚本放到init下,每次测试仅需执行一次
web_custom_request("stop", //停止所有nmon监控 "URL=http://192.168.126.166:8080/stop",
"Method=GET",
LAST);web_custom_request("start",
"URL=http://192.168.126.166:8080/start?n=name&t=10",
//n为场景名称,不支持中文;t为监控时长,单位分钟
"Method=GET",
LAST);

7. 通过jmeter开启监控示例:
添加独立的线程组,添加仅一次控制器,在http request协议中填写如图参数即可;
注:独立线程组和仅一次控制器是为了避免重复执行
需要结束任务的,自己扩展一下~

8. 生成html报告
默认生成html报告,如手动中断或异常中断,可手动生成html报告

通过浏览器查看生成的报告目录

选择对应的项目名称及测试时间,显示的报告图表如下,其中"保存为图片"按钮保存为显示图片的2倍大小(模版可以修改)

9. 结束监控工具

10. CentOS6和7测试通过,其它系统和版本需要去nmon官方下载,并改名为nmon替换即可
引用:
go的http框架采用gin:https://gin-gonic.github.io/gin/
图表插件采用百度的echarts:http://echarts.baidu.com/
新版nmon下载地址:http://nmon.sourceforge.net/
网友评论
全面化的工具还有很多,已知nmon生成图表工具比较出色的包括:
1. http://nmon.sourceforge.net/pmwiki.php?n=Site.Nmonchart (html的,可惜需要翻墙)
2. https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Power+Systems/page/nmon_analyser (最常用的excel方式)
3. 还有一个java写的 现在找不到了