Author: davsclaus
Date: Thu Apr 4 12:24:49 2013
New Revision: 1464497
URL: http://svn.apache.org/r1464497
Log:
CAMEL-6237: Polished karaf commands
Modified:
camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java
camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteInfo.java
camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteProfile.java
Modified:
camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java
URL:
http://svn.apache.org/viewvc/camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java?rev=1464497&r1=1464496&r2=1464497&view=diff
==============================================================================
---
camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java
(original)
+++
camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java
Thu Apr 4 12:24:49 2013
@@ -97,6 +97,8 @@ public class ContextInfo extends OsgiCom
System.out.println(StringEscapeUtils.unescapeJava("\tTotal
Processing Time: " + totalProcessingTime + "ms"));
Long lastProcessingTime = (Long)
mBeanServer.getAttribute(contextMBean, "LastProcessingTime");
System.out.println(StringEscapeUtils.unescapeJava("\tLast
Processing Time: " + lastProcessingTime + "ms"));
+ Long deltaProcessingTime = (Long)
mBeanServer.getAttribute(contextMBean, "DeltaProcessingTime");
+ System.out.println(StringEscapeUtils.unescapeJava("\tDelta
Processing Time: " + deltaProcessingTime + "ms"));
String load01 = (String)
mBeanServer.getAttribute(contextMBean, "Load01");
String load05 = (String)
mBeanServer.getAttribute(contextMBean, "Load05");
Modified:
camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteInfo.java
URL:
http://svn.apache.org/viewvc/camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteInfo.java?rev=1464497&r1=1464496&r2=1464497&view=diff
==============================================================================
---
camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteInfo.java
(original)
+++
camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteInfo.java
Thu Apr 4 12:24:49 2013
@@ -79,56 +79,63 @@ public class RouteInfo extends OsgiComma
Iterator<ObjectName> iterator = set.iterator();
if (iterator.hasNext()) {
ObjectName routeMBean = iterator.next();
- Long exchangesTotal = (Long)
mBeanServer.getAttribute(routeMBean, "ExchangesTotal");
-
System.out.println(StringEscapeUtils.unescapeJava("\tExchanges Total: " +
exchangesTotal));
- Long exchangesCompleted = (Long)
mBeanServer.getAttribute(routeMBean, "ExchangesCompleted");
-
System.out.println(StringEscapeUtils.unescapeJava("\tExchanges Completed: " +
exchangesCompleted));
- Long exchangesFailed = (Long)
mBeanServer.getAttribute(routeMBean, "ExchangesFailed");
-
System.out.println(StringEscapeUtils.unescapeJava("\tExchanges Failed: " +
exchangesFailed));
- Long minProcessingTime = (Long)
mBeanServer.getAttribute(routeMBean, "MinProcessingTime");
- System.out.println(StringEscapeUtils.unescapeJava("\tMin
Processing Time: " + minProcessingTime + "ms"));
- Long maxProcessingTime = (Long)
mBeanServer.getAttribute(routeMBean, "MaxProcessingTime");
- System.out.println(StringEscapeUtils.unescapeJava("\tMax
Processing Time: " + maxProcessingTime + "ms"));
- Long meanProcessingTime = (Long)
mBeanServer.getAttribute(routeMBean, "MeanProcessingTime");
- System.out.println(StringEscapeUtils.unescapeJava("\tMean
Processing Time: " + meanProcessingTime + "ms"));
- Long totalProcessingTime = (Long)
mBeanServer.getAttribute(routeMBean, "TotalProcessingTime");
- 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 resetTimestampObj =
mBeanServer.getAttribute(routeMBean, "ResetTimestamp");
- SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd
HH:mm:ss");
- if (resetTimestampObj == null) {
- // Print an empty value for scripting
-
System.out.println(StringEscapeUtils.unescapeJava("\tReset Statistics Date:"));
- } else {
- Date firstExchangeTimestamp = (Date) resetTimestampObj;
-
System.out.println(StringEscapeUtils.unescapeJava("\tReset Statistics Date: " +
format.format(firstExchangeTimestamp)));
- }
+ // the route must be part of the camel context
+ String camelId = (String)
mBeanServer.getAttribute(routeMBean, "CamelId");
+ if (camelId != null &&
camelId.equals(camelContext.getName())) {
+ Long exchangesTotal = (Long)
mBeanServer.getAttribute(routeMBean, "ExchangesTotal");
+
System.out.println(StringEscapeUtils.unescapeJava("\tExchanges Total: " +
exchangesTotal));
+ Long exchangesCompleted = (Long)
mBeanServer.getAttribute(routeMBean, "ExchangesCompleted");
+
System.out.println(StringEscapeUtils.unescapeJava("\tExchanges Completed: " +
exchangesCompleted));
+ Long exchangesFailed = (Long)
mBeanServer.getAttribute(routeMBean, "ExchangesFailed");
+
System.out.println(StringEscapeUtils.unescapeJava("\tExchanges Failed: " +
exchangesFailed));
+ Long minProcessingTime = (Long)
mBeanServer.getAttribute(routeMBean, "MinProcessingTime");
+
System.out.println(StringEscapeUtils.unescapeJava("\tMin Processing Time: " +
minProcessingTime + "ms"));
+ Long maxProcessingTime = (Long)
mBeanServer.getAttribute(routeMBean, "MaxProcessingTime");
+
System.out.println(StringEscapeUtils.unescapeJava("\tMax Processing Time: " +
maxProcessingTime + "ms"));
+ Long meanProcessingTime = (Long)
mBeanServer.getAttribute(routeMBean, "MeanProcessingTime");
+
System.out.println(StringEscapeUtils.unescapeJava("\tMean Processing Time: " +
meanProcessingTime + "ms"));
+ Long totalProcessingTime = (Long)
mBeanServer.getAttribute(routeMBean, "TotalProcessingTime");
+
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"));
+ Long deltaProcessingTime = (Long)
mBeanServer.getAttribute(routeMBean, "DeltaProcessingTime");
+
System.out.println(StringEscapeUtils.unescapeJava("\tDelta Processing Time: " +
deltaProcessingTime + "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");
- if (firstExchangeTimestampObj == null) {
- // Print an empty value for scripting
-
System.out.println(StringEscapeUtils.unescapeJava("\tFirst Exchange Date:"));
- } else {
- Date firstExchangeTimestamp = (Date)
firstExchangeTimestampObj;
-
System.out.println(StringEscapeUtils.unescapeJava("\tFirst Exchange Date: " +
format.format(firstExchangeTimestamp)));
- }
+ // Test for null to see if a any exchanges have been
processed first to avoid NPE
+ Object resetTimestampObj =
mBeanServer.getAttribute(routeMBean, "ResetTimestamp");
+ SimpleDateFormat format = new
SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ if (resetTimestampObj == null) {
+ // Print an empty value for scripting
+
System.out.println(StringEscapeUtils.unescapeJava("\tReset Statistics Date:"));
+ } else {
+ Date firstExchangeTimestamp = (Date)
resetTimestampObj;
+
System.out.println(StringEscapeUtils.unescapeJava("\tReset Statistics Date: " +
format.format(firstExchangeTimestamp)));
+ }
+
+ // Test for null to see if a any exchanges have been
processed first to avoid NPE
+ Object firstExchangeTimestampObj =
mBeanServer.getAttribute(routeMBean, "FirstExchangeCompletedTimestamp");
+ if (firstExchangeTimestampObj == null) {
+ // Print an empty value for scripting
+
System.out.println(StringEscapeUtils.unescapeJava("\tFirst Exchange Date:"));
+ } else {
+ Date firstExchangeTimestamp = (Date)
firstExchangeTimestampObj;
+
System.out.println(StringEscapeUtils.unescapeJava("\tFirst Exchange Date: " +
format.format(firstExchangeTimestamp)));
+ }
- // Again, check for null to avoid NPE
- Object lastExchangeCompletedTimestampObj =
mBeanServer.getAttribute(routeMBean, "LastExchangeCompletedTimestamp");
- if (lastExchangeCompletedTimestampObj == null) {
- // Print an empty value for scripting
-
System.out.println(StringEscapeUtils.unescapeJava("\tLast Exchange Completed
Date:"));
- } else {
- Date lastExchangeCompletedTimestamp = (Date)
lastExchangeCompletedTimestampObj;
-
System.out.println(StringEscapeUtils.unescapeJava("\tLast Exchange Completed
Date: " + format.format(lastExchangeCompletedTimestamp)));
+ // Again, check for null to avoid NPE
+ Object lastExchangeCompletedTimestampObj =
mBeanServer.getAttribute(routeMBean, "LastExchangeCompletedTimestamp");
+ if (lastExchangeCompletedTimestampObj == null) {
+ // Print an empty value for scripting
+
System.out.println(StringEscapeUtils.unescapeJava("\tLast Exchange Completed
Date:"));
+ } else {
+ Date lastExchangeCompletedTimestamp = (Date)
lastExchangeCompletedTimestampObj;
+
System.out.println(StringEscapeUtils.unescapeJava("\tLast Exchange Completed
Date: " + format.format(lastExchangeCompletedTimestamp)));
+ }
}
}
} else {
Modified:
camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteProfile.java
URL:
http://svn.apache.org/viewvc/camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteProfile.java?rev=1464497&r1=1464496&r2=1464497&view=diff
==============================================================================
---
camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteProfile.java
(original)
+++
camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/RouteProfile.java
Thu Apr 4 12:24:49 2013
@@ -83,22 +83,27 @@ public class RouteProfile extends OsgiCo
if (iterator.hasNext()) {
ObjectName routeMBean = iterator.next();
- // TODO: add column with total time (delta for self time)
+ // the route must be part of the camel context
+ String camelId = (String)
mBeanServer.getAttribute(routeMBean, "CamelId");
+ if (camelId != null &&
camelId.equals(camelContext.getName())) {
- String xml = (String) mBeanServer.invoke(routeMBean,
"dumpRouteStatsAsXml", new Object[]{Boolean.FALSE, Boolean.TRUE}, new
String[]{"boolean", "boolean"});
- RouteStatDump route = (RouteStatDump)
unmarshaller.unmarshal(new StringReader(xml));
+ // TODO: add column with total time (delta for self
time)
- System.out.println(String.format(HEADER_FORMAT, "Id",
"Completed", "Failed", "Last (ms)", "Delta (ms)", "Mean (ms)", "Min (ms)", "Max
(ms)", "Self (ms)"));
- System.out.println(String.format(OUTPUT_FORMAT,
route.getId(), route.getExchangesCompleted(), route.getExchangesFailed(),
route.getLastProcessingTime(),
- route.getDeltaProcessingTime(),
route.getMeanProcessingTime(), route.getMinProcessingTime(),
route.getMaxProcessingTime(), route.getTotalProcessingTime(), 0));
+ String xml = (String) mBeanServer.invoke(routeMBean,
"dumpRouteStatsAsXml", new Object[]{Boolean.FALSE, Boolean.TRUE}, new
String[]{"boolean", "boolean"});
+ RouteStatDump route = (RouteStatDump)
unmarshaller.unmarshal(new StringReader(xml));
- // output in reverse order which prints the route as we
want
- for (ProcessorStatDump ps : route.getProcessorStats()) {
- // the self time is the total time of the processor
itself
- long selfTime = ps.getTotalProcessingTime();
- // indent route id with 2 spaces
- System.out.println(String.format(OUTPUT_FORMAT, " " +
ps.getId(), ps.getExchangesCompleted(), ps.getExchangesFailed(),
ps.getLastProcessingTime(),
- ps.getDeltaProcessingTime(),
ps.getMeanProcessingTime(), ps.getMinProcessingTime(),
ps.getMaxProcessingTime(), selfTime));
+ System.out.println(String.format(HEADER_FORMAT, "Id",
"Completed", "Failed", "Last (ms)", "Delta (ms)", "Mean (ms)", "Min (ms)", "Max
(ms)", "Self (ms)"));
+ System.out.println(String.format(OUTPUT_FORMAT,
route.getId(), route.getExchangesCompleted(), route.getExchangesFailed(),
route.getLastProcessingTime(),
+ route.getDeltaProcessingTime(),
route.getMeanProcessingTime(), route.getMinProcessingTime(),
route.getMaxProcessingTime(), route.getTotalProcessingTime(), 0));
+
+ // output in reverse order which prints the route as
we want
+ for (ProcessorStatDump ps : route.getProcessorStats())
{
+ // the self time is the total time of the
processor itself
+ long selfTime = ps.getTotalProcessingTime();
+ // indent route id with 2 spaces
+ System.out.println(String.format(OUTPUT_FORMAT, "
" + ps.getId(), ps.getExchangesCompleted(), ps.getExchangesFailed(),
ps.getLastProcessingTime(),
+ ps.getDeltaProcessingTime(),
ps.getMeanProcessingTime(), ps.getMinProcessingTime(),
ps.getMaxProcessingTime(), selfTime));
+ }
}
}
} else {