Skip to main content
Version: 1.2.0

Debug

Analytics

Synopsis​

Logs debugging information for monitoring and troubleshooting pipelines.

Schema​

- debug:
level: <string>
message: <string>
keyword: <string>
tag: <string>
description: <text>
if: <script>
ignore_failure: <boolean>
on_failure: <processor[]>
on_success: <processor[]>

Configuration​

The following fields are used to define the processor:

FieldRequiredDefaultDescription
levelN"Debug"Debug level ("Debug", "Info", "Warning", "Error")
messageNfull documentCustom message to log (supports templates)
keywordN-Keyword for categorizing debug messages (supports templates)
tagN-Identifier for grouping related debug messages
descriptionN-Explanatory note
ifN-Condition to run
ignore_failureNfalseContinue processing if debug logging fails
on_failureN-Error handling processors
on_successN-Success handling processors

Details​

Logs debugging information about the current log entry being processed. The processor captures the state of the log entry, adds custom messages and metadata, and stores this information for troubleshooting and diagnostic purposes.

note

Debug messages are stored in the pipeline configuration and do not modify the log entry itself. They are only visible in debugging tools and logs, not in the processed output.

Captured debug messages can be used to analyze pipeline behavior, verify data transformations, and diagnose issues in processing flows. The processor supports different logging levels and additional context through keywords and tags.

warning

Extensive use of debug processors in production pipelines may impact performance. Consider using conditional debugging with the if parameter to limit debug message generation to specific scenarios.

Examples​

Basic​

Adding simple debug message...

- debug:
level: "Info"
message: "Processing started"

logs the entire document with a message

Templated​

Using field values in debug messages...

- debug:
level: "Debug"
message: "Processing user {{user.id}} with role {{user.role}}"
keyword: "user_processing"

creates dynamic context-aware logs

Conditional​

Debugging only specific scenarios...

- debug:
level: "Warning"
message: "High value transaction: {{transaction.amount}}"
if: "getNumericValue(logEntry, 'transaction.amount') > 10000"
tag: "high_value"

logs only when condition is met

Multi-Point​

Tracking progress at multiple stages creates a trace.

- set:
field: event.stage
value: "start"
- debug:
level: "Info"
message: "Initial state"
tag: "checkpoint_1"
# Other processors...
- set:
field: event.stage
value: "middle"
- debug:
level: "Info"
message: "Intermediate state"
tag: "checkpoint_2"
# More processors...
- set:
field: event.stage
value: "end"
- debug:
level: "Info"
message: "Final state"
tag: "checkpoint_3"