CAMEL-9014: Option to turn on extended JMX statistics for EIPs to track fine 
grained utilization statistics such as which and how often they send to dynamic 
endpoints.


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/18e89e77
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/18e89e77
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/18e89e77

Branch: refs/heads/master
Commit: 18e89e77ce6443712d2b6916630987fddb57c892
Parents: 7609c0d
Author: Claus Ibsen <davscl...@apache.org>
Authored: Sat Jul 25 13:59:30 2015 +0200
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Sat Jul 25 13:59:39 2015 +0200

----------------------------------------------------------------------
 .../core/xml/AbstractCamelContextFactoryBean.java  |  5 +++++
 .../camel/core/xml/CamelJMXAgentDefinition.java    | 17 +++++++++++++++++
 2 files changed, 22 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/18e89e77/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
----------------------------------------------------------------------
diff --git 
a/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
 
b/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
index 4caefee..b68173f 100644
--- 
a/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
+++ 
b/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
@@ -454,6 +454,11 @@ public abstract class AbstractCamelContextFactoryBean<T 
extends ModelCamelContex
             if (loadStatisticsEnabled != null) {
                 
getContext().getManagementStrategy().setLoadStatisticsEnabled(loadStatisticsEnabled);
             }
+
+            Boolean extendedStatisticsEnabled = 
CamelContextHelper.parseBoolean(getContext(), 
camelJMXAgent.getExtendedStatisticsEnabled());
+            if (extendedStatisticsEnabled != null) {
+                
getContext().getManagementStrategy().setExtendedStatisticsEnabled(extendedStatisticsEnabled);
+            }
         }
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/18e89e77/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelJMXAgentDefinition.java
----------------------------------------------------------------------
diff --git 
a/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelJMXAgentDefinition.java
 
b/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelJMXAgentDefinition.java
index 0769c61..26e0b68 100644
--- 
a/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelJMXAgentDefinition.java
+++ 
b/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelJMXAgentDefinition.java
@@ -112,6 +112,12 @@ public class CamelJMXAgentDefinition extends 
IdentifiedType {
     private String loadStatisticsEnabled;
 
     /**
+     * A flag that indicates whether extended statistics is enabled
+     */
+    @XmlAttribute
+    private String extendedStatisticsEnabled;
+
+    /**
      * A flag that indicates whether to include hostname in JMX MBean names.
      */
     @XmlAttribute
@@ -227,6 +233,14 @@ public class CamelJMXAgentDefinition extends 
IdentifiedType {
         this.loadStatisticsEnabled = loadStatisticsEnabled;
     }
 
+    public String getExtendedStatisticsEnabled() {
+        return extendedStatisticsEnabled;
+    }
+
+    public void setExtendedStatisticsEnabled(String extendedStatisticsEnabled) 
{
+        this.extendedStatisticsEnabled = extendedStatisticsEnabled;
+    }
+
     public String getIncludeHostName() {
         return includeHostName;
     }
@@ -272,6 +286,9 @@ public class CamelJMXAgentDefinition extends IdentifiedType 
{
         if (loadStatisticsEnabled != null) {
             sb.append(", 
loadStatisticsEnabled=").append(loadStatisticsEnabled);
         }
+        if (extendedStatisticsEnabled != null) {
+            sb.append(", 
extendedStatisticsEnabled=").append(extendedStatisticsEnabled);
+        }
         if (onlyRegisterProcessorWithCustomId != null) {
             sb.append(", 
onlyRegisterProcessorWithCustomId=").append(onlyRegisterProcessorWithCustomId);
         }

Reply via email to