官方文档地址https://jmeter-plugins.org/wiki/PerfMon/
JMeter是一款压力工具,我们也可以用它来监控服务器资源使用情况。
JMeter正常自带可以通过Tomcat的/manager/status来监控服务资源使用情况。这种情况只能监控Tomcat支持的资源使用部分。
本文主要来说一下如何通过JMeter插件来监控服务器CPU、内存、磁盘、网络等相关资源。
JMeter 插件网址: Perf Mon 插件
一、下载
首先进入网址 下载资源 ServerAgent-2.2.1.zip JMeterPlugins-Standard-1.3.1.zip JMeterPlugins-Extras-1.3.1.zip
其中JMeterPlugins-Standard和JMeterPlugins-Extras是客户端的,ServerAgent是服务端的。
二、配置
将 JMeterPlugins-Standard-1.3.1.zip 中 lib\ext 目录下的 JmeterPlugins-Standard.jar 文件都放到apache-jmeter-2.13\lib\ext目录中。 将 JMeterPlugins-Extras-1.3.1.zip 中 lib\ext 目录下的 JMeterPlugins-Extras.jar 文件放到apache-jmeter-2.13\lib\ext目录中。 将 ServerAgent-2.2.1 放到要监控的服务器中待使用。
三、监控
1) apache-jmeter-2.12\bin\jmeter.bat 启动JMeter 正常启动成功后截图如下:
如果不能启动查看jdk版本或者jdk是否安装正确。
2) 查看插件是否正常加载,如图:
其中jp@gc 开头的为加载插件后出现的。
3) 运行 ServerAgent-2.2.1\bin\startAgent.bat(使用startAgent.sh)
(默认端口为4444,也可以参数指定 –udp-port 4445 –tcp-port 4445) 可以看到输出内容如下:
启动JMeter,下载客户端插件:
服务端下载地址
https://github.com/undera/perfmon-agent/blob/master/README.md#supported-metrics
需要注意的是这个压缩包不要在本地解压,
因为本地用不到的,而且要把一整个压缩包都上传到服务器上面去,网上好多教程是错误的。执行命令:cd /usr/bin用Xftp把ServerAgent-2.2.3.zip上传到服务器的/usr/bin下执行命令:unzip ServerAgent-2.2.3.zip解压压缩包执行命令:rm -rf ServerAgent-2.2.3.zip删除原压缩包执行命令:cd ServerAgent-2.2.3进入ServerAgent-2.2.3目录执行命令:ls -a查看目录结构:CMDRunner.jarLICENSEServerAgent.jarstartAgent.shlibstartAgent.bat我们要用的就是startAgent.sh这个文件执行命令:chmod 777 startAgent.sh修改startAgent.sh文件权限执行命令:sh startAgent.sh启动Agent服务执行命令:nohup ./startAgent.sh &把Agent服务放到后台并且不挂起
打开JMeter,编写测试计划,添加并发线程组:
执行测试:
需要注意的是:线程组的持续时间至少要大于1秒钟!
点击上面的启动按钮后,查看ServerAgent日志出现: