Integration: Amazon Simple Email Service (SES) Event
Amazon Simple Email Service (SES) is an email sending service to send marketing, notification, and transactional emails. You can use the SMTP interface or one of the AWS SDKs to integrate Amazon SES directly into your existing applications. SES can send events to SNS.
Supported event types are:
- Send: SES is processing the email
- Reject: the email contained a virus
- Bounce: e.g., the recipient does not exist
- Complaint: the recipient marked the email as spam
- Delivery: the email was delivered
- Open: the recipient opened the email in his or her email client
- Click: the recipient clicked one or more links contained in the email
- Rendering Failure: the email was not sent because of a template rendering issue
You can select the events that you want to receive.
Monitoring email bounces
If you send out emails, the SMTP server on the other end may reject the message. This could be caused because the recipient does not exist or the inbox of the recipient is full. You may want to know about this event to clean up your database.
Enable SES events
- Visit https://console.aws.amazon.com/ses/home?region=us-east-1
- Click on the Configuration Sets link on the left
- Click on the Create Configuration Set button
- Set Configuration Set Name to
marbot
- Save by clicking the Create Configuration Set button.
- Click on the newly created configuration set
- Set Add Destination to
SNS
- Set Name to
marbot
- Enable Event type
Bounce
- Set Topic to
marbot
or your other SNS topic name - Save by clicking the Save button.
Sample Alert
To simulate a delivery failure, you have to send an email using the AWS CLI or one of the AWS SDKs. The following command uses the AWS CLI and can be executed in your terminal. Replace domain.com
with your SES domain.
aws ses send-email --configuration-set-name marbot --from "test@domain.com" --to "notexistent@domain.com" --subject test --text text |
The configuration-set-name
parameter specifies that the email is sent using the newly created Configuration Set marbot
.
You should receive an alert in Slack:
Chatbot for AWS Monitoring
Configure monitoring for Amazon Web Services: CloudWatch, EC2, RDS, EB, Lambda, and more. Receive and manage alerts via Slack. Solve incidents as a team.