[
https://issues.apache.org/jira/browse/CAMEL-24003?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen resolved CAMEL-24003.
---------------------------------
Resolution: Fixed
> BacklogTracer - Add activity queue to retain last N completed exchange
> summaries
> --------------------------------------------------------------------------------
>
> Key: CAMEL-24003
> URL: https://issues.apache.org/jira/browse/CAMEL-24003
> Project: Camel
> Issue Type: Improvement
> Components: camel-core
> Reporter: Claus Ibsen
> Assignee: Claus Ibsen
> Priority: Major
> Fix For: 4.22.0
>
>
> The BacklogTracer currently captures the latest completed exchange via the
> message history queue (completeHistoryQueue), but only retains the single
> most recent one. For the upcoming TUI Activity tab, we need a rolling window
> of the last N completed exchange summaries.
> Add a new lightweight activity queue to BacklogTracer that:
> - Captures a summary when an exchange completes (isLast on the original route)
> - Retains the last N summaries (configurable via activitySize, default 100)
> - Only stores metadata (exchangeId, routeId, timestamp, elapsed, failed,
> exception message, endpointUri) — no body, headers, or per-step detail
> - Works in standby mode (same as message history capture)
> - Exposes via a new dumpActivity() method on the BacklogTracer interface
> This piggybacks on the existing traceEvent() path where the history capture
> already detects exchange completion. The activity queue just retains N of
> those instead of only the latest one, in a lightweight form suitable for the
> Activity feed in the TUI.
> Changes needed:
> - BacklogTracer interface (camel-api): add activitySize getter/setter,
> dumpActivity() method
> - BacklogTracer impl (camel-base-engine): add activityQueue, capture logic,
> drain logic
> - ActivityDevConsole (camel-console): new dev console to expose activity data
> as JSON
--
This message was sent by Atlassian Jira
(v8.20.10#820010)