[JMXMon Samples Collector] > ERROR > Always getting an error reading samples

789 views
Skip to first unread message

tjn...@gmail.com

unread,
Oct 12, 2013, 8:56:35 PM10/12/13
to jmeter-...@googlegroups.com
Hello,

I'm trying to use the JMXMon component to get some JMX metrics from a weblogic server.
I follow the JMXMon component documentation in order to configure the component, however when I try to use it I have hallways the following error:
 - 2013/10/13 01:46:54 ERROR - kg.apc.jmeter.jmxmon.JMXMonSampler: "xx.xxxx.xxxx.xxxx.xxxxx":type=*,name="DatabaseQueriesExecuting"

Can anyone help with this problem? I have no ideia how to solve it...

Thanks


 

jmx-mon-jmeter.jpg

vdab...@gmail.com

unread,
Oct 13, 2013, 7:36:29 AM10/13/13
to jmeter-...@googlegroups.com, tjn...@gmail.com
Hi,

Can you see JMX Counters with standard JDK JConsole tool ?

If not, i think you need some weblogic specifics jars and add this weblogic jars in the <JMETER_HOME>/lib

Then the JMXMon could retrive Weblogic JMX attributs

If you sucess please add your solution in this thread forum.

For example to monitor JBoss 7, i add  jboss7-client.jar because the JMX procotole is not RMI/JRMP but SOAP.

Regards
Vincent D.

Tiago Neto Rodrigues

unread,
Oct 13, 2013, 12:03:59 PM10/13/13
to vdab...@gmail.com, jmeter-...@googlegroups.com
Yes, with jConsole I can see the counters.
I used the following command to start jConsole:
jconsole -J-Djava.class.path=%JAVA_HOME%\lib\jconsole.jar;%WL_HOME%\server\lib\wljmxclient.jar -J-Djmx.remote.protocol.provider.pkgs=weblogic.management.remote

In <JMETERS_HOME>/lib I have the following jar file: wlfullclient.jar

I also try to include only the wljmxclient.jar used to start the jConsole, but when I try to run the JMXMon sampler I have the following exception:

ERROR - jmeter.JMeter: Uncaught exception:  org.omg.CORBA.NO_PERMISSION:   vmcid: 0x0  minor code: 0  completed: No
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at com.sun.corba.se.impl.protocol.giopmsgheaders.MessageBase.getSystemException(Unknown Source)
at com.sun.corba.se.impl.protocol.giopmsgheaders.ReplyMessage_1_2.getSystemException(Unknown Source)
at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.getSystemExceptionReply(Unknown Source)
at com.sun.corba.se.impl.protocol.CorbaClientRequestDispatcherImpl.processResponse(Unknown Source)
at com.sun.corba.se.impl.protocol.CorbaClientRequestDispatcherImpl.marshalingComplete(Unknown Source)
at com.sun.corba.se.impl.protocol.CorbaClientDelegateImpl.invoke(Unknown Source)
at org.omg.CORBA.portable.ObjectImpl._invoke(Unknown Source)
at org.omg.CosNaming._NamingContextStub.resolve(Unknown Source)
at com.sun.jndi.cosnaming.CNCtx.callResolve(Unknown Source)
at com.sun.jndi.cosnaming.CNCtx.lookup(Unknown Source)
at com.sun.jndi.toolkit.url.GenericURLContext.lookup(Unknown Source)
at javax.naming.InitialContext.lookup(Unknown Source)
at javax.management.remote.rmi.RMIConnector.findRMIServerJNDI(Unknown Source)
at javax.management.remote.rmi.RMIConnector.findRMIServer(Unknown Source)
at javax.management.remote.rmi.RMIConnector.connect(Unknown Source)
at javax.management.remote.JMXConnectorFactory.connect(Unknown Source)
at kg.apc.jmeter.jmxmon.JMXMonCollector.initiateConnector(JMXMonCollector.java:198)
at kg.apc.jmeter.jmxmon.JMXMonCollector.initiateConnectors(JMXMonCollector.java:188)
at kg.apc.jmeter.jmxmon.JMXMonCollector.testStarted(JMXMonCollector.java:122)
at org.apache.jmeter.reporters.ResultCollector.testStarted(ResultCollector.java:283)
at kg.apc.jmeter.vizualizers.CorrectedResultCollector.testStarted(CorrectedResultCollector.java:26)
at org.apache.jmeter.engine.StandardJMeterEngine.notifyTestListenersOfStart(StandardJMeterEngine.java:209)
at org.apache.jmeter.engine.StandardJMeterEngine.run(StandardJMeterEngine.java:325)
at java.lang.Thread.run(Unknown Source)

--
Tiago Neto

tjn...@gmail.com

unread,
Oct 13, 2013, 12:32:20 PM10/13/13
to jmeter-...@googlegroups.com, vdab...@gmail.com, tjn...@gmail.com
I manged to resolve the CORBA.NO_PERMISSION problem. The user that is used to must belong to the Monitors group in the weblogic. The user that I have used in the previous tests only belongs to the administrators group.

Ok so the current status is:
 - In <JMETER_HOME>\lib I have the following jar file: wlfullclient.jar
 - Now I'm trying to read object JMSSessionRuntimeMBean.Consumers with attribute MessagesReceivedCount (I got this values from jConsole). 
 - JMXMon gives me the following error:
     ERROR - kg.apc.jmeter.jmxmon.JMXMonSampler: Key properties cannot be empty 

This means that the Key column should be filled? 
From the documentation this column only needs to be filled in certain cases, and from jConsole, I don't need to put nothing here for this object.

Tiago Neto

vdab...@gmail.com

unread,
Oct 14, 2013, 8:03:39 AM10/14/13
to jmeter-...@googlegroups.com, vdab...@gmail.com, tjn...@gmail.com
Hi,

Did you use the last version of JMXMon because this error message is not declare in the source code ?

https://github.com/undera/jmeter-plugins/blob/master/extras/src/kg/apc/jmeter/jmxmon/JMXMonSampler.java

Use a version after the 1st October from the download page
http://jmeter-plugins.org/downloads/all/

like the jmeter-plugins-extras-1.1.1-1.1.1.zip-2013-10-05_06-14.zip file or after

Regards.
Vincent D.

tjn...@gmail.com

unread,
Jan 14, 2014, 6:51:31 AM1/14/14
to jmeter-...@googlegroups.com, tjn...@gmail.com
Thanks Vicent,

I continue to have the problem related with the CORBA.NO_PERMISSION using the last version of the JMX Mon.

In my test plan i have a JMS Publisher sampler and a JMX Mon. listener. If I start jmeter and run the test only with the sampler active, then after a few successfully sent requests I can stop the test and activate the JMX Mon. and the listener works fine.
If I start jmeter and run the test with the sampler and listener activated, then I have the CORBA.NO_PERMISSION exception.

Anyone has this problem?
There is any way to overcome this? In some tests I want to have only the listener working with a dummy sampler for example (to simulate monitoring mode only).

Thanks a lot for any comment
Reply all
Reply to author
Forward
0 new messages