davsclaus opened a new pull request, #26603: URL: https://github.com/apache/camel/pull/26603
Fixes https://issues.apache.org/jira/browse/CAMEL-24819 Stacked on #26602 (CAMEL-24818); the first two commits are that PR and this one is the third. The circuit breaker processors exposed state, successful, failed and not permitted calls, but not three things they know: - how often the `onFallback` answered, i.e. how many callers got a degraded answer - how many calls timed out (the breaker counts them as failures, so a slow service and a broken one looked the same) - how many calls a full bulkhead rejected (the not permitted metric and the fault tolerance `onPrevented` listener count only breaker-open refusals) Changes: - `ResilienceProcessor` and `FaultToleranceProcessor`: `fallbackCalls`, `timedOutCalls`, `bulkheadRejectedCalls` counters incremented on the same code paths that set the `CamelCircuitBreakerResponse*` properties, reset by `transitionToCloseState`, exposed as `getNumberOfFallbackCalls`, `getNumberOfTimedOutCalls`, `getNumberOfBulkheadRejectedCalls` managed attributes. The fault tolerance processor also handles `BulkheadException` without a fallback the way it handles the open breaker. - Dev consoles `resilience4j` and `fault-tolerance`: the three counts in JSON and text; generated console metadata updated. - `camel get circuit-breaker`: FALLBACK and TIMEOUT columns, a BULKHEAD column only when a bulkhead is configured, and the fault tolerance rows now show success, fail and reject counts (they only showed the state before). Docs updated. - TUI circuit breaker tab: FALLBACK and TIMEOUT columns, fallback, timeout and bulkhead in the detail panel, help page updated. - Tests: counters per processor (open breaker and timeout), console JSON and text, CLI columns incl. a fault tolerance row with bulkhead, TUI render. Full test suites of camel-resilience4j and camel-microprofile-fault-tolerance pass locally, as do the CLI and TUI tests. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01Bp3538HRBPMQkb5ta9xRaj -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
