Jmeter script is showing error when it is being monitored by ASM via OPMS. It is an internal site. The ASM is showing the following error. Checkpoint error: 503 Service unavailable
If we run the same Jmeter script via Jmeter, it runs successfully with no errors.
Release : SAAS
Component : APP SYNTHETIC MONITOR ENVIRONMENTAL
This error is related to the issue but it is not the root cause. The message means that the check request was submitted to the Jmeter agent but an unexpected response was received instead of a valid check result.
Please review the jmeter agent log on OPMS. You can collect the jmeter agent log on OPMS as follows:
To find the root cause we need to inspect Jmeter agent logs. These are not available as files, instead we run 'docker logs asm_jmeter4-agent_N' where N is the number of the agent instance.
To fetch all the logs at once and save them into compressed files, you can use the following command (this one is for eight jmeter instances, adjust as needed if you have a different number configured in /etc/default/asm-smartpop-jmeter4-agent-docker)
for i in 1 2 3 4 5 6 7 8; do echo $i ; docker logs asm_jmeter4-agent_$i 2>&1 | gzip > jmeter4_logs.$i.gz ; done
In this case, jmeter logs on the OPMS show the following error:
SEVERE: exception caught during run: org.apache.jorphan.util.JMeterStopTestException: ModuleController:FRAGMENT- Transaction has no selected Controller (did you rename some element in the path to target controller?), test was shutdown as a consequence org.apache.jorphan.util.JMeterStopTestException: ModuleController:FRAGMENT- Transaction has no selected Controller (did you rename some element in the path to target controller?), test was shutdown as a consequence at org.apache.jmeter.control.ModuleController.resolveReplacementSubTree(ModuleController.java:143) at com.ca.asm.smartpop.jmeter.agent.Runner.prepareTree(Runner.java:356) at com.ca.asm.smartpop.jmeter.agent.Runner.run(Runner.java:414) at com.ca.asm.smartpop.jmeter.agent.DefaultExecutor.runCheck(DefaultExecutor.java:55) at com.ca.asm.smartpop.agent.JobExecutor.accept(JobExecutor.java:43) at com.ca.asm.smartpop.agent.JobExecutor.accept(JobExecutor.java:14) at com.ca.asm.smartpop.agent.Agent.lambda$mainLoop$3(Agent.java:182) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
This is a result of invalid JMX script.
If you have other monitors with similar scripts that are working fine, then we suggest you to compare them side-by-side and see what is wrong with the Jmeter script.