Author: davsclaus
Date: Wed Apr 18 07:29:32 2012
New Revision: 1327401

URL: http://svn.apache.org/viewvc?rev=1327401&view=rev
Log:
CAMEL-4470: Load avg added to Camel karaf command. Thanks to Scott 
England-Sullivan for the patch.

Added:
    
camel/branches/camel-2.9.x/platforms/karaf/commands/src/main/resources/OSGI-INF/bundle.info
      - copied unchanged from r1327399, 
camel/trunk/platforms/karaf/commands/src/main/resources/OSGI-INF/bundle.info
Modified:
    camel/branches/camel-2.9.x/   (props changed)
    
camel/branches/camel-2.9.x/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java
    
camel/branches/camel-2.9.x/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteInfo.java

Propchange: camel/branches/camel-2.9.x/
------------------------------------------------------------------------------
  Merged /camel/trunk:r1327399

Propchange: camel/branches/camel-2.9.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: 
camel/branches/camel-2.9.x/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java
URL: 
http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java?rev=1327401&r1=1327400&r2=1327401&view=diff
==============================================================================
--- 
camel/branches/camel-2.9.x/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java
 (original)
+++ 
camel/branches/camel-2.9.x/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java
 Wed Apr 18 07:29:32 2012
@@ -16,9 +16,16 @@
  */
 package org.apache.camel.karaf.commands;
 
+import java.util.Iterator;
+import java.util.Set;
+
+import javax.management.MBeanServer;
+import javax.management.ObjectName;
+
 import org.apache.camel.CamelContext;
 import org.apache.camel.Endpoint;
 import org.apache.camel.Route;
+import org.apache.camel.management.DefaultManagementAgent;
 import org.apache.felix.gogo.commands.Argument;
 import org.apache.felix.gogo.commands.Command;
 import org.apache.karaf.shell.console.OsgiCommandSupport;
@@ -52,6 +59,18 @@ public class ContextInfo extends OsgiCom
         System.out.println(StringEscapeUtils.unescapeJava("\tVersion: " + 
camelContext.getVersion()));
         System.out.println(StringEscapeUtils.unescapeJava("\tStatus: " + 
camelContext.getStatus()));
         System.out.println(StringEscapeUtils.unescapeJava("\tUptime: " + 
camelContext.getUptime()));
+        
+        MBeanServer mBeanServer = 
camelContext.getManagementStrategy().getManagementAgent().getMBeanServer();
+        Set<ObjectName> set = mBeanServer.queryNames(new 
ObjectName(DefaultManagementAgent.DEFAULT_DOMAIN + ":type=context,name=\"" + 
name + "\",*"), null);
+        Iterator<ObjectName> iterator = set.iterator();
+        if (iterator.hasNext()) {
+            ObjectName contextMBean = iterator.next();
+            String load01 = (String) mBeanServer.getAttribute(contextMBean, 
"Load01");
+            String load05 = (String) mBeanServer.getAttribute(contextMBean, 
"Load05");
+            String load15 = (String) mBeanServer.getAttribute(contextMBean, 
"Load15");
+            System.out.println(StringEscapeUtils.unescapeJava("\tLoad Avg: " + 
load01 + ", " + load05 + ", " + load15));
+        }
+        
         System.out.println("");
         
System.out.println(StringEscapeUtils.unescapeJava("\u001B[1mAdvanced\u001B[0m"));
         System.out.println(StringEscapeUtils.unescapeJava("\tAuto Startup: " + 
camelContext.isAutoStartup()));
@@ -83,6 +102,7 @@ public class ContextInfo extends OsgiCom
         for (String language : camelContext.getLanguageNames()) {
             System.out.println(StringEscapeUtils.unescapeJava("\t" + 
language));
         }
+        
         return null;
     }
 

Modified: 
camel/branches/camel-2.9.x/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteInfo.java
URL: 
http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteInfo.java?rev=1327401&r1=1327400&r2=1327401&view=diff
==============================================================================
--- 
camel/branches/camel-2.9.x/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteInfo.java
 (original)
+++ 
camel/branches/camel-2.9.x/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteInfo.java
 Wed Apr 18 07:29:32 2012
@@ -92,7 +92,11 @@ public class RouteInfo extends OsgiComma
                 System.out.println(StringEscapeUtils.unescapeJava("\tTotal 
Processing Time: " + totalProcessingTime + "ms"));
                 Long lastProcessingTime = (Long) 
mBeanServer.getAttribute(routeMBean, "LastProcessingTime");
                 System.out.println(StringEscapeUtils.unescapeJava("\tLast 
Processing Time: " + lastProcessingTime + "ms"));
-
+                String load01 = (String) mBeanServer.getAttribute(routeMBean, 
"Load01");
+                String load05 = (String) mBeanServer.getAttribute(routeMBean, 
"Load05");
+                String load15 = (String) mBeanServer.getAttribute(routeMBean, 
"Load15");
+                System.out.println(StringEscapeUtils.unescapeJava("\tLoad Avg: 
" + load01 + ", " + load05 + ", " + load15));
+                
                 // Test for null to see if a any exchanges have been processed 
first to avoid NPE
                 Object firstExchangeTimestampObj = 
mBeanServer.getAttribute(routeMBean, "FirstExchangeCompletedTimestamp");
                 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd 
HH:mm:ss");


Reply via email to