2
votes

I am using PerfMon listener to get graphs for memory, cpu etc. For this I have obeyed the following steps:

At server:

The agent i have run on the server and cmd says

INFO 2016-03-30 15:12:04.206 [kg.apc.p] (): Binding UDP to 4444

INFO 2016-03-30 15:12:04.269 [kg.apc.p] (): Binding TCP to 4444

INFO 2016-03-30 15:12:04.269 [kg.apc.p] (): JP@GC Agent v2.2.0 started..

I have set java path till bin in the environment variable. I also tried saving startAgent.bat with complete path of the java.exe file

At client/jmeter plan:

I have unpacked the JmeterPlugins standard jar and now I do see the listener jp@gc perfmon collection metric

In jmeter.properties I have also updated the server ip with port in remote host section

Under jp@gc - PerfMon Metrics Collector, I have added row with host ip its port 4444

Action:

Now if I run a small test and expected graph for CPU/memory etc, I just see

"ERROR: java.net.ConnectException: Connection timed out: connect"

I doubted firewall could be the issue so I set it off but that also did not help.

Any help will be much appreciated!

2

2 Answers

2
votes

Your setup at client and server side is correct.

But you have not mentioned opening of port # 4444. So it is most probably the cause of issue.

In order to make it work, Your port#4444 should be visible to JMeter client machine.

To verify if it is visible or not. you can use..

http://www.canyouseeme.org/
http://portchecker.co/

If it is not visible from Client machine, then you will need to open it. Visit these links to learn how to open port.

http://www.wikihow.com/Open-Ports

or you may use following from command line

netsh advfirewall firewall add rule name="Open Port" dir=in action=allow protocol=TCP localport=4444

netsh advfirewall firewall add rule name="Open Port" dir=out action=allow protocol=TCP localport=4444

0
votes

Try checking if you can connect to port 4444 on the machine where Server Agent is running using telnet command like:

telnet YOUR_HOST 4444

and sending test command like

enter image description here

You should receive Yep response. If it is not the case - server side performance monitoring won't work and you will need to establish connectivity between Metrics Collector and Server agent (usually it is enough to open TCP and/or UDP ports 4444 in firewall)

See How to Monitor Your Server Health & Performance During a JMeter Load Test article for more information