How to configure custom JMX plugin for Camel routes.
srikanth.pidikiti Dec 4, 2012 7:42 AMHi,
I have written custom plugin for monitoring Camel routes.
It installed successfully. But I am unable to see the metrics in JON-server inventory.
Here I the plugin which I have written
<?xml version="1.0" encoding="UTF-8" ?>
<plugin name="SampleRHQPlugin"
displayName="Sample RHQ JMX Plugin"
description="Provides monitoring of sample Knowledge Bases and Sessions"
version="1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:xmlns:rhq-plugin"
xmlns:c="urn:xmlns:rhq-configuration">
<depends plugin="JMX" useClasses="true"/>
<service name="Srikanth Custom Service"
description="Our Srikanth MBean custom service that has a code associated with it."
discovery="org.rhq.plugins.jmx.MBeanResourceDiscoveryComponent"
class="org.rhq.plugins.jmx.MBeanResourceComponent">
<runs-inside>
<parent-resource-type name="JMX Server" plugin="JMX"/>
<parent-resource-type name="JBossAS Server" plugin="JBossAS"/>
</runs-inside>
<plugin-configuration>
<c:simple-property name="objectName" readOnly="true" default="org.apache.camel:type=routes,*" />
<c:simple-property name="connectorAddress" default="service:jmx:rmi://localhost:44444/jndi/rmi://localhost:1099/karaf-root" required="false" type="string" description="The connection url in the form of a JMXServiceURL - this should only be set if the JVM has JMX Remoting enabled" />
<c:simple-property name="installURI" required="false" type="string" description="The installation path for the selected server type which will be used to find client libraries (if appropriate)" />
<c:simple-property name="principal" required="false" default="smx" description="The login principal/username" />
<c:simple-property name="credentials" required="false" type="password" default="smx" description="The login credentials/password" />
</plugin-configuration>
<metric property="ExchangesCompleted"
displayName="ExchangesCompleted"
defaultOn="true"
displayType="summary"
defaultInterval="30000"
description="Number of completed exchanges"/>
</service>
</plugin>
Even I can see from rhq-agent log that it is installed successfully.
2012-12-04 13:47:13,515 DEBUG [InventoryManager.discovery-1] (rhq.core.pc.inventory.InventoryManager)- Executing discovery for [Srikanth Custom Service] Resources...
2012-12-04 13:47:13,515 DEBUG [ResourceDiscoveryComponent.invoker.daemon-1] (org.rhq.plugins.jmx.MBeanResourceDiscoveryComponent)- Discovering MBean resources with object name query template: org.apache.camel:type=routes,*
2012-12-04 13:47:13,531 DEBUG [ResourceDiscoveryComponent.invoker.daemon-1] (org.rhq.plugins.jmx.MBeanResourceDiscoveryComponent)- Found [1] mbeans for query [org.apache.camel:type=routes,*].
2012-12-04 13:47:13,531 DEBUG [ResourceDiscoveryComponent.invoker.daemon-1] (org.rhq.plugins.jmx.MBeanResourceDiscoveryComponent)- [0] services have been added
2012-12-04 13:47:13,531 DEBUG [InventoryManager.discovery-1] (rhq.core.pc.inventory.InventoryManager)- Discovery for [Srikanth Custom Service] resources completed in [16] ms
Please help me to resolve the issue.