Claus Ibsen created CAMEL-24975:
-----------------------------------

             Summary: camel-core: the inflight, blocked and shutdown dumps say 
where the node is in the source
                 Key: CAMEL-24975
                 URL: https://issues.apache.org/jira/browse/CAMEL-24975
             Project: Camel
          Issue Type: Improvement
          Components: camel-core
            Reporter: Claus Ibsen


Follow-up to CAMEL-24972 and CAMEL-24975: the remaining places in camel-core 
that print a node id without saying where that node is in the source.

{{ExchangeExtension.getHistoryNodeSource()}} is documented as "the history node 
source:line-number where the node is located in the source code", is set by 
{{CamelInternalProcessor.NodeHistoryAdvice}} for every node, and is read in 
only one place today ({{MessageHelper}}). The exchange is in hand at each of 
the sites below, so none of them needs an API change:

* {{DefaultShutdownStrategy}} - logs the inflight exchanges with {{nodeId=...}} 
when routes do not shut down in time. The location says which line is holding 
the shutdown up.
* {{InflightConsole}} - the inflight dev console rows carry exchangeId, 
fromRouteId, atRouteId and nodeId.
* {{BlockedConsole}} - the blocked exchanges rows carry exchangeId, routeId and 
nodeId.
* {{DefaultAsyncProcessorAwaitManager}} - the {{NodeId:}} line of the 
blocked-thread dump.

Each degrades to today's output when message history or source location is off.

h3. Not in this issue

The JMX side ({{ManagedInflightRepository}}, 
{{ManagedAsyncProcessorAwaitManager}}) reads through 
{{InflightRepository.InflightExchange}}, which exposes {{getNodeId()}} but no 
{{getNodeSource()}}. That needs a default method on the SPI interface and a new 
column in the tabular data, so it belongs in its own issue if it is wanted.




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

Reply via email to