Debug
Spring Boot auto-configuration for the Camel Debugger.
This starter enables the Camel Debugger in your Spring Boot application, allowing you to set breakpoints and step through Camel routes during development. The debugger integrates with IDEs and tooling through JMX.
Maven coordinates
<dependency>
<groupId>org.apache.camel.springboot</groupId>
<artifactId>camel-debug-starter</artifactId>
</dependency> Spring Boot Auto-Configuration
The starter supports 15 options, which are listed below.
| Name | Description | Default | Type |
|---|---|---|---|
camel.debug.body-include-files | Whether to include the message body of file based messages. The overhead is that the file content has to be read from the file. | true | Boolean |
camel.debug.body-include-streams | 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. | false | Boolean |
camel.debug.body-max-chars | To limit the message body to a maximum size in the traced message. Use 0 or negative value to use unlimited size. | Integer | |
camel.debug.breakpoints | Allows to pre-configure breakpoints (node ids) to use with debugger on startup. Multiple ids can be separated by comma. Use special value all_routes to add a breakpoint for the first node for every route, in other words this makes it easy to debug from the beginning of every route without knowing the exact node ids. | String | |
camel.debug.enabled | Enables Debugger in your Camel application. | true | Boolean |
camel.debug.fallback-timeout | Fallback Timeout in seconds (300 seconds as default) when block the message processing in Camel. A timeout used for waiting for a message to arrive at a given breakpoint. | 300 | Long |
camel.debug.include-exception | Trace messages to include exception if the message failed | true | Boolean |
camel.debug.include-exchange-properties | Whether to include the exchange properties in the traced message | true | Boolean |
camel.debug.include-exchange-variables | Whether to include the exchange variables in the traced message | true | Boolean |
camel.debug.jmx-connector-enabled | Whether to create JMX connector that allows tooling to control the Camel debugger. This is what the IDEA and VSCode tooling is using. | true | Boolean |
camel.debug.jmx-connector-port | Port number to expose a JMX RMI connector for tooling that needs to control the debugger. | 1099 | Integer |
camel.debug.logging-level | The debugger logging level to use when logging activity. | info | LoggingLevel |
camel.debug.single-step-include-start-end | In single step mode, then when the exchange is created and completed, then simulate a breakpoint at start and end, that allows to suspend and watch the incoming/complete exchange at the route (you can see message body as response, failed exception etc). | false | Boolean |
camel.debug.standby | To set the debugger in standby mode, where the debugger will be installed by not automatic enabled. The debugger can then later be enabled explicit from Java, JMX or tooling. | false | Boolean |
camel.debug.wait-for-attach | Whether the debugger should suspend on startup, and wait for a remote debugger to attach. This is what the IDEA and VSCode tooling is using. | false | Boolean |