Claus Ibsen created CAMEL-24819:
-----------------------------------

             Summary: circuitBreaker: count fallback, timed out and bulkhead 
rejected calls in JMX, dev console, camel get circuit-breaker and the TUI
                 Key: CAMEL-24819
                 URL: https://issues.apache.org/jira/browse/CAMEL-24819
             Project: Camel
          Issue Type: Improvement
          Components: camel-jbang, eip, camel-microprofile-fault-tolerance
            Reporter: Claus Ibsen


Follow-up to CAMEL-24818. The circuit breaker processors expose state, 
successful, failed and not permitted calls through JMX, the dev console 
(camel-resilience4j and camel-microprofile-fault-tolerance), the CLI command 
*camel get circuit-breaker* and the TUI circuit breaker tab. Three things that 
the processors know are not counted anywhere:

* how often the *onFallback* answered, i.e. how many callers got a degraded 
answer
* how many calls timed out (Resilience4j records a timeout as a failure, so a 
slow service and a broken one look the same)
* how many calls the bulkhead rejected (Resilience4j's not permitted metric and 
the fault tolerance onPrevented listener count only breaker-open refusals, so a 
saturated bulkhead is invisible)

Add fallbackCalls, timedOutCalls and bulkheadRejectedCalls counters to 
ResilienceProcessor and FaultToleranceProcessor, incremented on the same code 
paths that set the CamelCircuitBreakerResponse* exchange properties, reset with 
the existing reset operation, exposed as managed attributes, added to both dev 
consoles (JSON and text), to camel get circuit-breaker and to the TUI tab, 
detail panel and help page. REJECT keeps meaning refused by the open breaker, 
matching Resilience4j's vocabulary.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to