Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Access JMX agents from non-Java clients

Tags:

java

jmx

For some integration projects I would like to query JMX agents from non-Java clients.

I found two options so far, ws-jmx-connector (Soap based) and mx4j and its JMX HTTP adaptor which returns XML document responses. The JSR 262 based ws-jmx-connector seems to be no longer in active development. I have not tried MX4J so I do not know if it is possible to use the HTTP adaptor with the standard JMX implementation in the J2SE.

Are there other software projects which can help to connect non-Java clients with JMX agents, using open standard protocols?

Update: meanwhile I found this project, a "Restful JMX Adaptor". It is also described in the article RESTful Access to JMX Instrumentation, Via URI-fication of MBean Attributes

like image 596
mjn Avatar asked Feb 24 '11 15:02

mjn


People also ask

How do I access JMX?

When the JBoss Server is running, you can get a live view of the server by going to the JMX console application at http://localhost:8080/jmx-console.

Is JMX a UDP or TCP port?

The JMX Messaging Protocol (JMXMP) connector is a configuration of the generic connector where the transport protocol is based on TCP and the object wrapping is native Java serialization.


2 Answers

I recommend Jolokia, which is a full featured JSON/HTTP adapter for JMX. It has several client libs, i.e. jmx4perl, which allows for programatic JMX access from within perl. For Java and Javascript there are client bindings, too. More are in the pipeline (Scala, Groovy, Python). The installation is dead easy, for a Java EE container it is as simple as deploying a standard Java EE war. Other agents (OSGi, Mule, JVM6) are available, too.

like image 107
Roland Huß Avatar answered Oct 12 '22 02:10

Roland Huß


Jolokia is a agent based and implies that I install a server and agents. What I am after is a lightweight pure command line, non-java based, non-agent based solution to call JMX/RMI interface.

Let it be a C-code application or perl or python whatever as long as it is fast.

like image 30
bortek Avatar answered Oct 12 '22 03:10

bortek