如何监控通过使用 Amazon SES 发送的电子邮件的打开率、点击率和退回率?
上次更新日期:2022 年 10 月 10 日
我想要获得我使用 Amazon Simple Email Service(Amazon SES)发送的电子邮件的以下事件通知:
- 当收件人打开电子邮件时,以及收件人打开我的电子邮件的次数
- 当收件人点击电子邮件中的链接时,以及收件人点击电子邮件中的链接的次数
- 当我发送的电子邮件被退回时,以及我的电子邮件被退回的次数
简短描述
当出现以下情况之一时,使用 Amazon Simple Notification Service(Amazon SNS)通知您:
- 收件人打开了您的电子邮件。
- 收件人点击您电子邮件中的链接。
- 您的电子邮件会导致被退回。
使用 Amazon CloudWatch 跟踪以下内容:
- 收件人打开您的电子邮件或点击电子邮件中的链接的次数。
- 您的电子邮件被退回的次数。
请遵循以下步骤来配置 Amazon SES、Amazon SNS 和 CloudWatch,以便监控电子邮件的打开、点击和退回率:
注意:如果您将电子邮件抄送给多个收件人,则以下配置不会显示哪个收件人打开了电子邮件。
- 创建 Amazon SNS 主题。
- 配置 Amazon SES 以将有关电子邮件点击、打开和退回的信息发送至 Amazon SNS 主题。
- 配置 Amazon SES 以将有关电子邮件点击、打开和退回的信息发送至 CloudWatch。
- 发送测试电子邮件以验证电子邮件打开、点击和退回的通知。
- 检查您的 Amazon SNS 通知和 CloudWatch 指标。
- 指定电子邮件标题中的配置集。
注意:使用此配置,您会收到每封打开的电子邮件和电子邮件中点击的每个链接的通知。
解决方法
在开始之前,请确保您已使用 Amazon SES 验证您的域。
创建 Amazon SNS 主题
- 打开 Amazon SNS 控制台。
- 选择 Topics(主题)。
- 在 Topics(主题)页面上,选择 Create topic(创建主题)。
- 在 Create topic(创建主题)页面的 Details(详细信息)部分中,执行以下操作:
对于 Type(类型),选择 Standard(标准)。
在 Topic name(主题名称)中,输入名称。
(可选)对于 Display name(显示名称),输入主题的显示名称。 - 选择 Create topic(创建主题)。
- 从已创建主题的 Topic details(主题详细信息)中,选择 Create subscription(创建订阅)。
- 对于 Protocol(协议),选择 Email-JSON。
- 对于终端节点,输入您希望接收通知的电子邮件地址。
- 选择 Create subscription(创建订阅)。
- 从您在步骤 8 中指定的电子邮件地址,打开通过 Amazon SNS 发送的主题行为“AWS 通知 - 订阅确认”的订阅确认电子邮件。
- 在订阅确认电子邮件中,请打开指定为 SubscribeURL 的 URL,以确认您的订阅。
配置 Amazon SES 以将有关电子邮件点击、打开和退回的信息发送至 Amazon SNS 主题
- 打开 Amazon SES 控制台,然后导航至相应的 AWS 区域。
- 在导航窗格中,在 Configuration(配置)下,选择 Configuration Sets(配置集)。
- 选择 Create Set(创建集)。
- 对于 Configuration Set Name(配置集名称),输入配置集的名称。
- 选择 Create Set(创建集)。
- 选择 Event Destinations(事件目标)选项卡,然后选择 Add Destination(添加目标)。
- 对于 Event types(事件类型),选择 Hard Bounces, Opens and Clicks(硬退信、打开和点击)。 然后,选择 Next(下一步)。
- 对于 Destination type(目标类型),选择 Amazon SNS。
- 对于 Name(名称),输入 SNS 目标的名称。
- 对于 SNS Topic(SNS 主题),选择您创建的 Amazon SNS 主题。然后,选择 Next(下一步)。
- 选择 Add Destination(添加目标)。
配置 Amazon SES 以将有关电子邮件点击、打开和退回的信息发送至 CloudWatch
- 打开 Amazon SES 控制台,然后导航至相应的区域。
- 在导航窗格中,在 Configuration(配置)下,选择 Configuration Sets(配置集)。
- 选择您创建的配置集。
- 选择 Event Destinations(事件目标)选项卡,然后选择 Add Destination(添加目标)。
- 对于 Event types(事件类型),选择 Hard Bounces, Opens and Clicks(硬退信、打开和点击)。然后,选择 Next(下一步)。
- 对于 Destination type(目标类型),选择 Amazon CloudWatch。
- 对于 Name(名称),输入 CloudWatch 目标的名称。
- 对于 Value Source(值来源),选择 Message Tag(消息标签)。
- 对于 Dimension Name(维度名称),请输入您希望用于 CloudWatch 中该指标的名称 。
- 对于 Default Value(默认值),您可以输入任何值,例如 Null。
- 选择 Next(下一步),然后选择 Add Destination(添加目标)。
发送测试电子邮件以验证电子邮件打开、点击和退回通知
Amazon SES 有一个邮箱模拟器,您可以用它来测试电子邮件打开、点击和退回。
2. 在导航窗格中,在 Configuration(配置)下方选择 Verified Identities(已验证的身份)。
3. 选择一个已验证域。
4. 选择 Send Test Email (发送测试电子邮件)。
5. 对于 Message details(消息详细信息),请选择电子邮件格式 Raw(原始)。
6. 对于 From-address(发件人地址),输入电子邮件地址与已验证域。
7. 对于 Scenario(场景),选择 Custom(自定义)以验证打开次数和点击次数,或者选择 Bounce(退回)以验证退回次数。
8. 输入您希望用作测试收件人的电子邮件地址。
注意:对于 Custom(自定义)场景:如果您仍在 Amazon SES 沙盒中,请确保 Custom recipient(自定义收件人)字段中的地址是经过验证的电子邮件地址。
9. 对于 Message(消息),输入类似于以下示例的文本:
自定义场景
X-SES-CONFIGURATION-SET: myConfigset
X-SES-MESSAGE-TAGS: Email=NULL
From: test-verified-domain@example.com
To: test-recipient@example.com
Subject: Test email
Content-Type: multipart/alternative;
boundary="----=_boundary"
------=_boundary
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit
This is a test email.
<a href="https://aws.amazon.com/">Amazon Web Services</a>
------=_boundary
退回场景
X-SES-CONFIGURATION-SET: myConfigset
X-SES-MESSAGE-TAGS: Email=NULL
From: test-verified-domain@example.com
To: bounce@simulator.amazonses.com
Subject: Test email
Content-Type: multipart/alternative;
boundary="----=_boundary"
------=_boundary
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit
This is a test email.
<a href="https://aws.amazon.com/">Amazon Web Services</a>
------=_boundary
注意:使用已创建配置集的名称替换 myConfigset。使用在配置集中为 CloudWatch 目标输入的维度名称和默认值(Dimension Name=Default Value)替换 Email=Null。
9. 选择发送测试电子邮件。
10. 从您的测试收件人电子邮件地址,打开测试电子邮件,并点击其中的链接。
检查您的 SNS 通知和 CloudWatch 指标
- 打开您用作 Amazon SNS 主题订阅端点的电子邮件地址收件箱。确认您已收到打开、点击和退回通知。
- 打开 CloudWatch 控制台。
- 在导航窗格中,请选择 Metrics(指标)。
- 在 All metrics(所有指标)视图中,选择 SES。
- 选择您创建的指标。
- 验证图表显示了您发送用于模拟打开、点击和退回的测试电子邮件。
指定电子邮件标题中的配置集
要将您创建的配置集应用于电子邮件,必须传递电子邮件标题中的配置集。有关更多信息,请参阅在您发送电子邮件时指定配置集。