3 Replies Latest reply on Dec 5, 2012 10:18 AM by mazz

    How to configure custom JMX plugin for Camel routes.

    srikanth.pidikiti

      Hi,

       

      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.