diff --git a/kite-morphlines/kite-morphlines-core/src/main/java/org/kitesdk/morphline/stdlib/TryRulesBuilder.java b/kite-morphlines/kite-morphlines-core/src/main/java/org/kitesdk/morphline/stdlib/TryRulesBuilder.java
index <HASH>..<HASH> 100644
--- a/kite-morphlines/kite-morphlines-core/src/main/java/org/kitesdk/morphline/stdlib/TryRulesBuilder.java
+++ b/kite-morphlines/kite-morphlines-core/src/main/java/org/kitesdk/morphline/stdlib/TryRulesBuilder.java
@@ -89,9 +89,20 @@ public final class TryRulesBuilder implements CommandBuilder {
     }
     
     @Override
+
     protected void doNotify(Record notification) {
       for (Command childRule : childRules) {
-        childRule.notify(notification);
+        if (!catchExceptions) {
+          childRule.notify(notification);
+        } else {
+          try {
+            childRule.notify(notification);
+          } catch (RuntimeException e) {
+            numExceptionsCaught.mark();
+            LOG.warn("tryRules command caught rule exception in doNotify(). Continuing to try other remaining rules", e);
+            // continue and try the other remaining rules
+          }
+        }
       }
       super.doNotify(notification);
     }
CDK-<I>: tryRules morphline command should also catch exceptions in doNotify() if catchExceptions : true