Applies a list of child processors only when a previous processing step has failed.
# Config fields, showing default valueslabel: ""catch: 
Behaves similarly to the
for_each processor, where a
list of child processors are applied to individual messages of a batch. However,
processors are only applied to messages that failed a processing step prior to
For example, with the following config:
pipeline:processors:- resource: foo- catch:- resource: bar- resource: baz
If the processor
foo fails for a particular message, that message
will be fed into the processors
baz. Messages that do not
fail for the processor
foo will skip these processors.
When messages leave the catch block their fail flags are cleared. This processor is useful for when it's possible to recover failed messages, or when special actions (such as logging/metrics) are required before dropping them.
More information about error handing can be found here.