Repository: camel Updated Branches: refs/heads/camel-2.16.x 7caa9bbdd -> 3c3bee15a refs/heads/master d461a3d57 -> bc11cef69
Add warn logging when updating routes with xml over jmx api failed Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/f4d689c5 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/f4d689c5 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/f4d689c5 Branch: refs/heads/master Commit: f4d689c5d857e7b5e2915e91b88815bb5eecb0a1 Parents: d461a3d Author: Claus Ibsen <davscl...@apache.org> Authored: Tue Oct 27 13:53:46 2015 +0100 Committer: Claus Ibsen <davscl...@apache.org> Committed: Tue Oct 27 13:53:46 2015 +0100 ---------------------------------------------------------------------- .../management/mbean/ManagedCamelContext.java | 16 ++++++++++++++-- .../camel/management/mbean/ManagedRoute.java | 18 ++++++++++++++++-- 2 files changed, 30 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/f4d689c5/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java index cd3ed4a..758d3b1 100644 --- a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java +++ b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java @@ -37,6 +37,8 @@ import javax.management.openmbean.CompositeType; import javax.management.openmbean.TabularData; import javax.management.openmbean.TabularDataSupport; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.w3c.dom.Document; import org.apache.camel.CamelContext; @@ -69,6 +71,9 @@ import org.apache.camel.util.ObjectHelper; */ @ManagedResource(description = "Managed CamelContext") public class ManagedCamelContext extends ManagedPerformanceCounter implements TimerListener, ManagedCamelContextMBean { + + private static final Logger LOG = LoggerFactory.getLogger(ManagedCamelContext.class); + private final ModelCamelContext context; private final LoadTriplet load = new LoadTriplet(); @@ -382,8 +387,15 @@ public class ManagedCamelContext extends ManagedPerformanceCounter implements Ti return; } - // add will remove existing route first - context.addRouteDefinitions(def.getRoutes()); + try { + // add will remove existing route first + context.addRouteDefinitions(def.getRoutes()); + } catch (Exception e) { + // log the error as warn as the management api may be invoked remotely over JMX which does not propagate such exception + String msg = "Error updating routes from xml: " + xml + " due: " + e.getMessage(); + LOG.warn(msg, e); + throw e; + } } public String dumpRoutesStatsAsXml(boolean fullStats, boolean includeProcessors) throws Exception { http://git-wip-us.apache.org/repos/asf/camel/blob/f4d689c5/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java index 2f11b41..a4722fa 100644 --- a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java +++ b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java @@ -48,9 +48,14 @@ import org.apache.camel.model.RouteDefinition; import org.apache.camel.spi.ManagementStrategy; import org.apache.camel.spi.RoutePolicy; import org.apache.camel.util.ObjectHelper; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; @ManagedResource(description = "Managed Route") public class ManagedRoute extends ManagedPerformanceCounter implements TimerListener, ManagedRouteMBean { + + private static final Logger LOG = LoggerFactory.getLogger(ManagedRoute.class); + public static final String VALUE_UNKNOWN = "Unknown"; protected final Route route; protected final String description; @@ -275,8 +280,17 @@ public class ManagedRoute extends ManagedPerformanceCounter implements TimerList + getRouteId() + ", routeId from XML: " + def.getId()); } - // add will remove existing route first - context.addRouteDefinition(def); + LOG.debug("Updating route: {} from xml: {}", def.getId(), xml); + + try { + // add will remove existing route first + context.addRouteDefinition(def); + } catch (Exception e) { + // log the error as warn as the management api may be invoked remotely over JMX which does not propagate such exception + String msg = "Error updating route: " + def.getId() + " from xml: " + xml + " due: " + e.getMessage(); + LOG.warn(msg, e); + throw e; + } } public String dumpRouteStatsAsXml(boolean fullStats, boolean includeProcessors) throws Exception {