Interface MessageHistory


public interface MessageHistory
A breadcrumb record that captures the route id and processing node an Exchange visited at a given point in time, together with the elapsed processing time at that node.

History entries are accumulated in the exchange property Exchange.MESSAGE_HISTORY when message history is enabled on the CamelContext. They are primarily used for debugging, tracing, and performance analysis, and are surfaced via the Camel debugger and management or monitoring APIs.

See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    long
    Gets the elapsed time in millis processing the node took (this is 0 until the node processing is done)
    default long
    The elapsed time since created.
    @Nullable Message
    A read-only copy of the message at the point of this history (if this has been enabled).
    Gets the node at the point of this history.
    Gets the route id at the point of this history.
    long
    Gets the point in time the message history was created
    boolean
    Used specially during debugging where some EIP nodes are not accepted for debugging and are essentially skipped.
    boolean
    Used specially during debugging to know that an EIP was skipped over
    void
    Used for signalling that processing of the node is done.
    void
    nodeProcessingDone(long delta)
    Used for signalling that processing of the node is done.
    void
    setAcceptDebugger(boolean acceptDebugger)
    Used specially during debugging where some EIP nodes are not accepted for debugging and are essentially skipped.
    void
    setDebugSkipOver(boolean skipOver)
    Used specially during debugging to know that an EIP was skipped over
  • Method Details

    • getRouteId

      String getRouteId()
      Gets the route id at the point of this history.
    • getNode

      NamedNode getNode()
      Gets the node at the point of this history.
    • getTime

      long getTime()
      Gets the point in time the message history was created
    • getElapsed

      long getElapsed()
      Gets the elapsed time in millis processing the node took (this is 0 until the node processing is done)
    • getElapsedSinceCreated

      default long getElapsedSinceCreated()
      The elapsed time since created.
    • nodeProcessingDone

      void nodeProcessingDone()
      Used for signalling that processing of the node is done.
    • nodeProcessingDone

      void nodeProcessingDone(long delta)
      Used for signalling that processing of the node is done.
      Parameters:
      delta - extra time in millis that should be subtracted from the processing time
    • getMessage

      @Nullable Message getMessage()
      A read-only copy of the message at the point of this history (if this has been enabled).
    • setAcceptDebugger

      void setAcceptDebugger(boolean acceptDebugger)
      Used specially during debugging where some EIP nodes are not accepted for debugging and are essentially skipped. This allows tooling to avoid dumping message history for nodes that did not take part in the debugger.
    • isAcceptDebugger

      boolean isAcceptDebugger()
      Used specially during debugging where some EIP nodes are not accepted for debugging and are essentially skipped. This allows tooling to avoid dumping message history for nodes that did not take part in the debugger.
    • setDebugSkipOver

      void setDebugSkipOver(boolean skipOver)
      Used specially during debugging to know that an EIP was skipped over
    • isDebugSkipOver

      boolean isDebugSkipOver()
      Used specially during debugging to know that an EIP was skipped over