github:https://github.com/mzky/easyNmon
码云:https://gitee.com/mzky/easyNmon
为了方便多场景批量性能测试,用 golang 写了个监控程序,可以通过 get url 方式启动和停止 nmon 服务,非常适合配合 Loadrunner 性能测试框架使用,可以批量执行场景并生成报告
执行文件下载:(以下执行文件不包含源码):
https://pan.baidu.com/s/1XCeNQPMtymlI79kgNCg1ZA
@ 注意:默认 nmon 为 CentOS 版本(CentOS6.5~7.4 正常),Ubuntu 和 SUSE 需要下载对应版本的 nmon 替换(SESE11.4 测试正常)
2.启动 EasyNmon 监控服务
输入 ./monitor& 启动 EasyNmon 服务,无需安装任何插件(后缀加&为后台运行)
通过添加-h 参数,查看帮助
默认端口 8080,如需修改 加上-p 端口号:
web 管理页面效果如图:
通过 get 接口调用:
参考-h
将脚本放到 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);
添加独立的线程组,添加仅一次控制器,在 http request 协议中填写如图参数即可;
注:独立线程组和仅一次控制器是为了避免重复执行
需要结束任务的,自己扩展一下~
默认自动生成 html 报告,手动停止任务中断的也会自动生成 html 报告,可通过浏览器查看生成的报告目录,选择对应项目查看报告。
选择对应的项目名称及测试时间,显示的报告图表如下,其中"保存为图片"按钮保存为显示图片的 2 倍大小(模版可以修改),新版已增加平均值线
引用:
go 的 http 框架采用 gin:https://gin-gonic.github.io/gin/
图表插件采用百度的 echarts:http://echarts.baidu.com/
新版 nmon 下载地址:http://nmon.sourceforge.net/
word... 打错了
@mysun365 有需求就会去做 现在新需求是多个场景的报告 比如几十个场景报告汇总并导出一份 work 文档 其中会考虑平均值问题
不错,一般 nmon 我会在压测前已经压测后再跑一段时间,另外图表是否可以考虑 nmon 那样加上一些其他统计数据(平均值、加权平均值已经平均 cpu...)