方法1:

使用插件来监控CPU,内存等的使用情况

1.需要的插件准备

 JMeterPlugins-Standard-1.4.0.zip , JMeterPlugins-Extras-1.4.0.zip下载

https://jmeter-plugins.org/downloads/old/

 ServerAgent-2.2.1.zip   下载

 

 2.Jmeter

 解压JMeterPlugins-Standard-1.4.0.zip,将其中\lib\ext\JMeterPlugins-Standard.jar包复制到jmeter安装目录下的\lib\ext下

解压JMeterPlugins-Extras-1.4.0.zip,将其中\lib\ext\JMeterPlugins-Extras.jar包复制到jmeter安装目录下的\lib\ext下

 

启动jmeter,在监听器的选项中增加了一些jp@gc开头的监听器,监控cpu、内存、i/o的监听是jp@gc - PerfMon Metrics Collector

 

监控cpu内存使用率程序 python cpu内存监控工具_Standard

 

 jp@gc - PerfMon Metrics Collector的设置:

 

监控cpu内存使用率程序 python cpu内存监控工具_Standard_02

 

Add Row 可以添加需要监控的服务器ip,端口号默认为4444,监控内容CPU/MEMORY/DISKS I/O等

 

3.agent服务器

将ServerAgent-2.2.1.zip解压后放在需要监控的服务器上,并开启

startAgent.bat(windows)
startAgent.sh (linux)

linux服务器上首先将startAgent.sh设定为可执行文件:

chmod 777 startAgent.sh
./startAgent.sh执行文件

如果要将该文件设置为后台执行不关闭

Nohup ./startAgent.sh &

 

 

4.查看结果

 

监控cpu内存使用率程序 python cpu内存监控工具_java_03

 

在服务器上开启startAgent服务后,再在jmeter上运行脚本,可以在jp@gc - PerfMon Metrics Collector上查看监控的图形结果。

 

异常:

在使用JMeter PerfMon Metrics collector插件收集收据的时候,收集不到数据同时报如下错误:

ERROR: java.io.IOException: Agent is unreachable via TCP

 或者

ERROR: java.io.IOException: Agent is unreachable via UDP

 这是用于默认的端口4444被占用,更换其他端口即可;例如将指定TCP为3401,UDP指定为3402

./startAgent.sh --tcp-port 3401 --udp-port 3402 --sysinfo

另外,如果要注意服务器防火墙,如果有开启,需要将此端口加进去,方法如下:
vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 4444 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3401 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 3402 -j ACCEPT

重启服务:service iptables restart

然后再重启
./startAgent.sh --tcp-port 3401 --udp-port 3402 --sysinfo

监控cpu内存使用率程序 python cpu内存监控工具_Standard_04

 

方法2:

不需要安装插件,只要jmeter的运行环境配置好就可以了:

打开这个小工具的步骤很简单,如果你已经配置好了Jmeter运行的环境,那么你也就不用去做其他的配置,直接 点击:开始——》运行——》输入cmd——》然后在出现的命令行界面输入“jconsole”即可弹出一个【java监视和管理控制台】,

 

监控cpu内存使用率程序 python cpu内存监控工具_监控cpu内存使用率程序 python_05

 

将会弹出如下界面:

 

监控cpu内存使用率程序 python cpu内存监控工具_服务器_06

如果远程机器非本地,需要在远程服务器配置信息并启动服务,方可连接,具体操作详见:

 

         这里我们选择本地进程,并点击一下sun.tools.jconsole.JConsole这一行,然后点击连接,就可以查看我们的内存和CPU的使用情况了。

         当然,我们要得到服务器的内存使用等信息,也可以选择 本地进程下面的远程进程,在文本框中输入我们需要测试的服务器的IP地址:端口,然后在下面输入用户名和密码,点击连接,看看会出现什么情况。

监控cpu内存使用率程序 python cpu内存监控工具_Standard_07