Camel JMX
Apache Camel has extensive support for JMX to allow you to monitor and control the behavior of the broker via the JMX MBeans.
Using JMX to monitor Apache Camel
You can enable/disable JMX support as follows...
1. Run a camel context setting the context property useJmx to true.
<camelContext id="camel" useJmx="true" xmlns="http://activemq.apache.org/camel/schema/spring"> <route> ... </route> </camelContext>
2. Run a JMX console (e.g. jconsole - JMX console included in the JDK <JAVA_HOME>/bin/jconsole.exe)
3. Connect to the given JMX URL:
The CamelContext should appear in the list of local connections, if you are running JConsole on the same host as Camel.
To connect to a remote Camel instance, or if the local process does not show up, use Remote Process option, and enter an URL. Here is an example localhost URL:
service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
Using the Apache Camel which Jconsole
The SystemProperties for Camel JMX support
Property Name |
value |
Description |
---|---|---|
org.apache.camel.jmx |
true or false |
if is true , it will enable jmx feature in Camel |
org.apache.camel.jmx.usePlatformMBeanServer |
true or false |
if is true, Camel JMX agent will use the platformMBeanServer which holds the JVM's memory, cpu and some other management information |
jmxAgent Properties Reference
Property Name |
Default Value |
Description |
---|---|---|
id |
|
The JMX agent name, and it is not optional |
usePlatformMBeanServer |
false |
If true then it will use the plateform MBean server form the JVM |
jmxDomainName |
org.apache.camel |
The jmx domain that all objects names will use |
createConnector |
true |
If we should create a JMX connector (to allow remote management) for the MBeanServer |
connectorPort |
1099 |
The port that the JMX connector will use |
connectorPath |
/jmxrmi |
The path that JMX connector will be registered under |