Skip to main content
AWS Step Functions can emit execution-level logs — state transitions, input and output payloads, errors, and per-state durations — to CloudWatch Log Groups. CloudWatch Logs is the only supported destination. State machines also publish status-change events to EventBridge. Express Workflows don’t keep execution history in Step Functions, so logging is the only way to see what an Express execution did. CloudWatch Log Forwarder — enable logging on each state machine with a destination Log Group, and the Bronto forwarder Lambda subscribes to it.
  • Choose a log level: ALL, ERROR, FATAL, or OFF. ERROR captures failures, timeouts, and aborts; ALL captures every state transition.
  • Turn on Include execution data if you want input and output payloads in the logs.
  • Name the log group with the /aws/vendedlogs/states/ prefix. This avoids the CloudWatch Logs 5,120-character resource-policy limit when you enable logging on many state machines.

Alternatives

  • EventBridge API Destinations — for execution status-change events (detail-type Step Functions Execution Status Change, source aws.states), such as started, succeeded, failed, timed out, and aborted, when full step-by-step detail isn’t required.
See Ingesting AWS Data into Bronto for the full service-to-method mapping.

References