[
https://issues.apache.org/jira/browse/CAMEL-23631?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen resolved CAMEL-23631.
---------------------------------
Resolution: Fixed
> Route diagram - highlight error path from ErrorRegistry message history
> -----------------------------------------------------------------------
>
> Key: CAMEL-23631
> URL: https://issues.apache.org/jira/browse/CAMEL-23631
> Project: Camel
> Issue Type: Improvement
> Components: camel-diagram, camel-jbang
> Reporter: Claus Ibsen
> Assignee: Claus Ibsen
> Priority: Major
> Fix For: 4.21.0
>
>
> The ErrorRegistry captures rich error snapshots including message history —
> the sequence of route nodes the exchange visited before the error occurred.
> Each history entry contains the routeId and nodeId (e.g., route1[log1] (5
> ms)).
> The route diagram rendering pipeline (camel-diagram) renders route structures
> as PNG images or ASCII/Unicode text, but currently has no concept of
> highlighting specific nodes or paths.
> This improvement would allow rendering a route diagram where the error path
> is highlighted, making it easy to visually trace the exact route the failed
> exchange took.
> *Implementation approach:*
> 1. Propagate node ID through the diagram pipeline — add id field to NodeInfo
> and LayoutNode, read it in RouteDiagramHelper.parseRoutes()
> 2. Add Set<String> highlightedNodeIds parameter to both renderers
> (RouteDiagramRenderer for PNG, RouteDiagramAsciiRenderer for text)
> 3. Highlight matching nodes with a distinct visual style (colored border/glow
> for PNG, ANSI colors for text)
> 4. Add CLI support, e.g. camel route-diagram --highlight "from1,log1,to3" or
> camel route-diagram --error <uid> to fetch history from a running process
> The join key (node ID) already exists in both data sources — the route
> structure JSON has code[].id and the error history has routeId[nodeId] — but
> the diagram pipeline currently discards the ID during parsing.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)