BacklogDebugger
Available from Camel
...
2.12
...
Camel
...
supports
...
a
...
backlog
...
debugger
...
that
...
is
...
used
...
for
...
live
...
debugging
...
of
...
message
...
they
...
are
...
routed
...
in
...
Camel.
...
The
...
backlog
...
debugger
...
has
...
additional
...
functionality
...
for
...
easier
...
debugging
...
aimed
...
at
...
tooling,
...
than
...
the
...
Debugger
...
.
...
The
...
backlog
...
debugger
...
is
...
exposed
...
in
...
JMX
...
in
...
the
...
tracer
...
node
...
with
...
the
...
name
...
BacklogDebugger
...
.
...
The
...
JMX
...
API
...
is
...
defined
...
in
...
the
...
org.apache.camel.api.management.mbean.ManagedBacklogDebuggerMBean
...
interface.
...
You
...
can
...
enable
...
or
...
disable
...
the BacklogDebugger
...
dynamically,
...
by
...
calling
...
enableDebugger
...
or
...
disableDebugger
...
methods.
...
Options
Div |
---|
class | confluenceTableSmall |
---|
|
Option | Default | Description |
---|
bodyIncludeFiles
| true
| Whether to include the message body of file based messages. The overhead is that the file content has to be read from the file. | bodyIncludeStreams
| false
| Whether to include the message body of stream based messages. If enabled then beware the stream may not be re-readable later. See more about Stream caching. | bodyMaxChars
| 128kb
| To limit the message body to a maximum size in the traced message. Use 0 or negative value to use unlimited size. | enabled
| false
| Whether the debugger is enabled or not. | singleStepMode
| false
| Whether currently in single step mode of a single Exchange. |
|
Operations
Div |
---|
class | confluenceTableSmall |
---|
|
Option | Type | Description |
---|
addBreakpoint(nodeId)
| void
| To add a breakpoint at the given node. | addConditionalBreakpoint(nodeId, language, predicate)
| void
| To add a conditional breakpoint at the given node. The predicate is created from the language parameter. | disableBreakpoint(nodeId)
| void
| To disable a breakpoint temporary. | disableDebugger
| void
| To disable the debugger. | dumpTracedMessagesAsXml(nodeId)
| String
| To dump the debugged messages from the give node id in XML format. | enableBreakpoint(nodeId)
| void
| To active a breakpoint which has been temporary disabled. | enableDebugger
| void
| To enable the debugger. | getBreakpoints
| Set<String>
| To get a set of all the nodes which has a breakpoint added. | getDebuggerCounter
| long
| Gets the total number of debugged messages. | getSuspendedBreakpointNodeIds
| Set<String>
| To get a set of all the nodes which has suspended breakpoints e.g., an Exchange at the breakpoint which is suspended. | resetDebuggerCounter
| void
| To reset the debugger counter. | removeBreakpoint(nodeId)
| void
| To remove the breakpoint from the given node id . | resumeBreakpoint(nodeId)
| void
| To resume a suspend breakpoint, which will then continue routing the Exchange. | resumeAll
| void
| To resume all suspended breakpoints. | step
| void
| To step to next node when in single step mode. | stepBreakpoint(nodeId)
| void
| To start single step mode from a suspended breakpoint at the given node. Then invoke step to step to next node in the route. | setMessageBodyOnBreakpoint(nodeId,body)
| void
| To update the message body on the suspended Exchange at the node. | setMessageHeaderOnBreakpoint(nodeId,headerName,value)
| void
| To update/add the message header on the suspended Exchange at the node. |
|
Enabling
You would need to enable this using the JMX API.
See Also