diff --git a/dev/com.ibm.ws.microprofile.faulttolerance.2.0/src/com/ibm/ws/microprofile/faulttolerance20/state/impl/CircuitBreakerStateImpl.java b/dev/com.ibm.ws.microprofile.faulttolerance.2.0/src/com/ibm/ws/microprofile/faulttolerance20/state/impl/CircuitBreakerStateImpl.java
index <HASH>..<HASH> 100644
--- a/dev/com.ibm.ws.microprofile.faulttolerance.2.0/src/com/ibm/ws/microprofile/faulttolerance20/state/impl/CircuitBreakerStateImpl.java
+++ b/dev/com.ibm.ws.microprofile.faulttolerance.2.0/src/com/ibm/ws/microprofile/faulttolerance20/state/impl/CircuitBreakerStateImpl.java
@@ -50,7 +50,11 @@ public class CircuitBreakerStateImpl implements CircuitBreakerState {
         } else {
             circuitBreaker.recordFailure(result.getFailure());
             if (!(result.getFailure() instanceof CircuitBreakerOpenException)) {
-                metricRecorder.incrementCircuitBreakerCallsFailureCount();
+                if (circuitBreaker.isFailure(null, result.getFailure())) {
+                    metricRecorder.incrementCircuitBreakerCallsFailureCount();
+                } else {
+                    metricRecorder.incrementCircuitBreakerCallsSuccessCount();
+                }
             }
         }
     }
Correct CircuitBreaker metric reporting

When a method throws an exception which is not included in the failOn
attribute, that should be considered a success, not a failure.