- Newest
- Most votes
- Most comments
EventBridge Pipes metrics provide detailed visibility into different types of failures that can occur during pipe execution. Here's how these metrics work and relate to each other:
The metrics represent different stages and types of failures:
-
ExecutionTimeout: Occurs when the entire pipe execution exceeds the maximum allowed time (5 minutes). -
ExecutionFailed: Represents complete failures of the pipe execution. -
ExecutionPartiallyFailed: Indicates that some items in a batch succeeded while others failed. -
EnrichmentStageFailed: Specifically counts failures in the enrichment stage of the pipe. -
TargetStageFailed: Counts complete failures in the target stage of the pipe. -
TargetStagePartiallyFailed: Counts partial failures in the target stage.
These metrics do not all roll up into ExecutionFailed. Instead, they represent distinct failure scenarios at different stages of pipe execution. The ExecutionFailed metric represents complete failures of the entire pipe execution, while stage-specific metrics like EnrichmentStageFailed and TargetStageFailed provide more granular information about where the failure occurred.
A partial execution failure (tracked by ExecutionPartiallyFailed or TargetStagePartiallyFailed) typically occurs in the context of batch processing. For example, with Amazon SQS and stream sources like Kinesis and DynamoDB, EventBridge Pipes supports partial batch failure handling. If a target supports batching and only part of the batch succeeds, EventBridge automatically retries the failed items.
For Lambda and Step Functions targets, you can specify a partial failure by returning a payload with a defined structure that indicates which events need to be retried. For instance, you would return a JSON structure with batchItemFailures containing the IDs of the failed events. EventBridge Pipes will then retry those specific items.
EventBridge delivers these metrics to CloudWatch every minute, allowing you to monitor and troubleshoot your pipe executions effectively.
Sources
Logging Amazon EventBridge Pipes performance - Amazon EventBridge
Amazon EventBridge Pipes batching and concurrency - Amazon EventBridge
Logging and monitoring Amazon EventBridge Pipes using Amazon CloudWatch Logs - Amazon EventBridge
ExecutionFailed is a top-level metric that counts full pipe invocation failures—cases where no event makes it through all stages successfully. It’s not a roll-up of every other “Failed” or “Timeout” metric; those describe failures scoped to specific pipeline phases. ExecutionTimeout triggers when the overall pipe run exceeds the five‑minute limit and is treated as a separate terminal state, not a subset of ExecutionFailed.
—Taz
answered 7 months ago
Thanks for the information - that helps.
I'm still a bit confused about ExecutionFailed though. To summarise my understanding:
- If an event makes it through some, but not all, stages then it won't be counted.
- If an event fails at the first stage, it will be counted in <Stage>Failed and ExecutionFailed.
Is that right?
I'm also still wondering about the ...PartiallyFailed metrics. Do they relate to partial batch failures, or something else?
answered 7 months ago
Doing some more investigation:
- Created a pipe without any enrichment - just filter/target stages.
- Deliberately made target stage fail.
I observed the ExectionFailed and TargetStageFailed metrics both incremented.
answered 7 months ago
Relevant content
asked 2 years ago
- AWS OFFICIALUpdated 6 months ago
- AWS OFFICIALUpdated a year ago
- AWS OFFICIALUpdated a year ago
- AWS OFFICIALUpdated a year ago
