Hi,

I consider runtime monitoring and manageability as one of the key features
for any real-world usage of "headless" integration solutions. Camel has good
JMX support (and improving), but the exposed attributes may not always be as
usable as possible. Often it's only about details, e.g. min/max/avg
processing time should omit at least the first exchange - usually there's
extra initialization cost that is not representative for all subsequent
exchanges and distorts the statistic to some degree.

At this time I'd like to propose an additional runtime attribute: an
exchange load. It can be seen as an equivalent to the Unix process load
(obtained e.g. with the "w" command) and is an EWMA (exponentially weighted
moving average) of the inflight exchanges of each individual route or the
whole Camel context. It averages the number of exchanges over a certain
period of time (e.g. 1, 5, 15 minutes), giving bigger weight to more recent
readings, and smaller weight to older readings. At any time, you would get a
good impression about how loaded the Camel machinery has recently been.

If this seems useful, I'm happy to open a JIRA issue and provide a patch
that adds this statistic.

cheers
Christian


--
View this message in context: 
http://camel.465427.n5.nabble.com/Camel-Runtime-Management-Exchange-Load-tp4721211p4721211.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to