Skip to Content

SAP-C02: AWS Step Functions Failure Notification with SNS and SES

Learn how to implement failure notifications for AWS Step Functions workflows using Amazon SNS topics, SES email integration, and error handling with Catch fields for comprehensive error reporting.

Table of Contents

Question

A company has automated the nightly retraining of its machine learning models by using AWS Step Functions. The workflow consists of multiple steps that use AWS Lambda. Each step can fail for various reasons, and any failure causes a failure of the overall workflow.

A review reveals that the retraining has failed multiple nights in a row without the company noticing the failure. A solutions architect needs to improve the workflow so that notifications are sent for all types of failures in the retraining process.

Which combination of steps should the solutions architect take to meet these requirements? (Choose three.)

A. Create an Amazon Simple Notification Service (Amazon SNS) topic with a subscription of type “Email” that targets the team’s mailing list.
B. Create a task named “Email” that forwards the input arguments to the SNS topic.
C. Add a Catch field to all Task, Map, and Parallel states that have a statement of “ErrorEquals”: [ “States.ALL” ] and “Next”: “Email”.
D. Add a new email address to Amazon Simple Email Service (Amazon SES). Verify the email address.
E. Create a task named “Email” that forwards the input arguments to the SES email address.
F. Add a Catch field to all Task, Map, and Parallel states that have a statement of “ErrorEquals”: [ “States.Runtime” ] and “Next”: “Email”.

Answer

To meet the requirements of sending notifications for all types of failures in the retraining process, the combination of steps the solutions architect should take is:

A. Create an Amazon Simple Notification Service (Amazon SNS) topic with a subscription of type “Email” that targets the team’s mailing list.
C. Add a Catch field to all Task, Map, and Parallel states that have a statement of “ErrorEquals”: [ “States.ALL” ] and “Next”: “Email”.
E. Create a task named “Email” that forwards the input arguments to the SES email address.

Explanation

A. Creating an Amazon SNS topic with an email subscription ensures that notifications can be sent to the team’s mailing list.

C. Adding a Catch field with “ErrorEquals”: [ “States.ALL” ] and “Next”: “Email” to all Task, Map, and Parallel states ensures that any type of error that occurs in these states will be caught and forwarded to the “Email” task.

E. Creating a task named “Email” that forwards the input arguments to the SES email address is necessary to send the notification email using Amazon Simple Email Service (SES).

The combination of these steps ensures that notifications will be sent to the team’s mailing list for any type of failure that occurs during the retraining process.

B is not necessary because the input arguments can be forwarded directly to the SES email address in the “Email” task.

D is not required because SES email addresses can be verified programmatically, and creating an SNS topic with an email subscription is a more suitable approach for sending notifications to a mailing list.

F is incorrect because “States.Runtime” only catches errors related to the AWS Step Functions service itself, whereas “States.ALL” catches all types of errors, including those specific to the Lambda functions used in the retraining process.

Amazon AWS Certified Solutions Architect – Professional SAP-C02 certification exam practice question and answer (Q&A) dump with detail explanation and reference available free, helpful to pass the Amazon AWS Certified Solutions Architect – Professional SAP-C02 exam and earn Amazon AWS Certified Solutions Architect – Professional SAP-C02 certification.