Hi If I remember you need to implement Service too for custom mbeans. Or extend ServiceSupport.
On Fri, Mar 7, 2014 at 4:44 PM, janne mattila <[email protected]> wrote: > I am trying to add JMX based healthcheck monitoring to my routes. I > followed instructions from > http://michalwarecki.blogspot.fi/2012/08/monitoring-and-managing-apache-camel.html("Custom > MBean"). My custom MBean looks like: > > @ManagedResource(description = "Statictics Processor") > public class TestMBean implements Processor { > > private int totalRequests; > > private int totalCharacters; > > @ManagedAttribute > public int getAvgChar() { > return totalCharacters / totalRequests; > } > > @ManagedAttribute > public int getTotalChar() { > return totalCharacters; > } > > public void process(Exchange exchange) throws Exception { > ++totalRequests; > totalCharacters += ((String) > exchange.getIn().getBody(String.class)).length(); > } > } > > and it has been added to my route. When I use hawtio web console to inspect > my routes, the processor is there but it does not have the getAvgChar / > getTotalChar operations. Only the default operations, available for all > processors, are there. > > What is wrong and should I do something else completely to publish a new > JMX MBean from a Camel route running inside ServiceMix container? > > Also, this mbean is published in jmx hierarchy in > > my-host-name/290-xyroutename/processors/mybeansName > > where 290 is the bundle ID (so not static). How can I configure the mbean > to be registered with some specific name? -- Claus Ibsen ----------------- Red Hat, Inc. Email: [email protected] Twitter: davsclaus Blog: http://davsclaus.com Author of Camel in Action: http://www.manning.com/ibsen Make your Camel applications look hawt, try: http://hawt.io
