CAMEL-TUI: Add Consumers tab and health check DOWN indicators#23260
Merged
Conversation
- Insert new TAB_CONSUMERS = 3, shifting Endpoints→5, Health→6, History→7, Trace→8 (NUM_TABS 7→8) - Parse consumers JSON (id, uri, state, class, scheduled, inflight, polling, totalCounter, delay/period, statistics timestamps) - renderConsumers() table: ID, STATUS, TYPE, INFLIGHT, TOTAL, PERIOD, SINCE-LAST (started/completed/failed), URI - STATUS shown in green (Started/Polling) or red; TYPE strips "Consumer" suffix and package prefix for readability - Sort with 's' key cycling ID→STATUS→TYPE→INFLIGHT→TOTAL→URI - Footer hints updated; all number hints updated to 1-8 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…om health tab Right-align the PERIOD header and values in the consumers table so TOTAL and PERIOD read as two distinct columns rather than one merged block. Remove the memory Gauge widget from the health tab — it was rendered as a 3-row strip at the bottom and showed up as unwanted noise; the health check table now occupies the full area. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Read the top-level 'message' field from each health check JSON object (same field the 'camel get health' CLI uses). Fall back to details['failure.error.message'] if absent. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
When a consumer's health check (id: 'consumer:<routeId>') is DOWN, the STATUS cell turns red and is prefixed with ⚠, and the URI column shows the health check failure message instead of the endpoint URI. This makes unhealthy consumers immediately visible without having to switch to the Health tab. The lookup matches ConsumerInfo.id against HealthCheckInfo.name with the 'consumer:' prefix, which is the convention used by ConsumersHealthCheckRepository. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
When one or more health checks are DOWN, the Health tab title changes from the normal yellow total-count badge to a red '(N DOWN)' indicator, giving an immediate at-a-glance signal without needing to open the tab. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Contributor
|
🌟 Thank you for your contribution to the Apache Camel project! 🌟 🐫 Apache Camel Committers, please review the following items:
|
Contributor
|
🧪 CI tested the following changed modules:
All tested modules (2 modules)
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Claude Code on behalf of Claus Ibsen
This PR adds a new Consumers tab to the Camel JBang TUI monitor and improves health-check visibility across tabs.
New: Consumers tab (tab 4)
A dedicated tab showing all consumers for the selected integration, inserted between Routes and Endpoints:
sto cycle through columns (ID, STATUS, TYPE, INFLIGHT, TOTAL, URI); default sort by IDs/c/f4 Consumers (N)Health check DOWN indicators
Consumers tab: when a consumer's health check (
consumer:<routeId>) is DOWN, the STATUS cell turns red and is prefixed with⚠, and the URI column switches from the endpoint URI to the health check failure message — making unhealthy consumers immediately visible without switching to the Health tab.Health tab label: the tab title now distinguishes healthy from unhealthy states:
6 Health (N)in yellow (total count)6 Health (N DOWN)in red bold — immediate at-a-glance alarmOther fixes
details.failure.error.message; fixed to read the top-levelmessagefield, same ascamel get health)Test plan
camel tui4— Consumers tab shows all consumers with correct columns and sortsto cycle sort columns6— Health tab shows MESSAGE column populated for DOWN checks⚠ Startedin red on Consumers tab and(N DOWN)in red on Health tab label🤖 Generated with Claude Code