如何监控通过使用 Amazon SES 发送的电子邮件的打开率、点击率和退回率?

上次更新日期:2022 年 10 月 10 日

我想要获得我使用 Amazon Simple Email Service(Amazon SES)发送的电子邮件的以下事件通知:

  • 当收件人打开电子邮件时,以及收件人打开我的电子邮件的次数
  • 当收件人点击电子邮件中的链接时,以及收件人点击电子邮件中的链接的次数
  • 当我发送的电子邮件被退回时,以及我的电子邮件被退回的次数

简短描述

当出现以下情况之一时,使用 Amazon Simple Notification Service(Amazon SNS)通知您:

  • 收件人打开了您的电子邮件。
  • 收件人点击您电子邮件中的链接。
  • 您的电子邮件会导致被退回。

使用 Amazon CloudWatch 跟踪以下内容:

  • 收件人打开您的电子邮件或点击电子邮件中的链接的次数。
  • 您的电子邮件被退回的次数。

请遵循以下步骤来配置 Amazon SES、Amazon SNS 和 CloudWatch,以便监控电子邮件的打开、点击和退回率:

注意:如果您将电子邮件抄送给多个收件人,则以下配置不会显示哪个收件人打开了电子邮件。

  1. 创建 Amazon SNS 主题。
  2. 配置 Amazon SES 以将有关电子邮件点击、打开和退回的信息发送至 Amazon SNS 主题。
  3. 配置 Amazon SES 以将有关电子邮件点击、打开和退回的信息发送至 CloudWatch。
  4. 发送测试电子邮件以验证电子邮件打开、点击和退回的通知。
  5. 检查您的 Amazon SNS 通知和 CloudWatch 指标。
  6. 指定电子邮件标题中的配置集。

注意:使用此配置,您会收到每封打开的电子邮件和电子邮件中点击的每个链接的通知。

解决方法

在开始之前,请确保您已使用 Amazon SES 验证您的域

创建 Amazon SNS 主题

  1. 打开 Amazon SNS 控制台
  2. 选择 Topics(主题)。
  3. Topics(主题)页面上,选择 Create topic(创建主题)。
  4. Create topic(创建主题)页面的 Details(详细信息)部分中,执行以下操作:
    对于 Type(类型),选择 Standard(标准)。
    Topic name(主题名称)中,输入名称。
    (可选)对于 Display name(显示名称),输入主题的显示名称。
  5. 选择 Create topic(创建主题)。
  6. 从已创建主题的 Topic details(主题详细信息)中,选择 Create subscription(创建订阅)。
  7. 对于 Protocol(协议),选择 Email-JSON
  8. 对于终端节点,输入您希望接收通知的电子邮件地址。
  9. 选择 Create subscription(创建订阅)。
  10. 从您在步骤 8 中指定的电子邮件地址,打开通过 Amazon SNS 发送的主题行为“AWS 通知 - 订阅确认”的订阅确认电子邮件。
  11. 在订阅确认电子邮件中,请打开指定为 SubscribeURL 的 URL,以确认您的订阅。

配置 Amazon SES 以将有关电子邮件点击、打开和退回的信息发送至 Amazon SNS 主题

  1. 打开 Amazon SES 控制台,然后导航至相应的 AWS 区域。
  2. 在导航窗格中,在 Configuration(配置)下,选择 Configuration Sets(配置集)。
  3. 选择 Create Set(创建集)。
  4. 对于 Configuration Set Name(配置集名称),输入配置集的名称。
  5. 选择 Create Set(创建集)。
  6. 选择 Event Destinations(事件目标)选项卡,然后选择 Add Destination(添加目标)。
  7. 对于 Event types(事件类型),选择 Hard Bounces, Opens and Clicks(硬退信、打开和点击)。 然后,选择 Next(下一步)。
  8. 对于 Destination type(目标类型),选择 Amazon SNS
  9. 对于 Name(名称),输入 SNS 目标的名称。
  10. 对于 SNS Topic(SNS 主题),选择您创建的 Amazon SNS 主题。然后,选择 Next(下一步)。
  11. 选择 Add Destination(添加目标)。

配置 Amazon SES 以将有关电子邮件点击、打开和退回的信息发送至 CloudWatch

  1. 打开 Amazon SES 控制台,然后导航至相应的区域。
  2. 在导航窗格中,在 Configuration(配置)下,选择 Configuration Sets(配置集)。
  3. 选择您创建的配置集。
  4. 选择 Event Destinations(事件目标)选项卡,然后选择 Add Destination(添加目标)。
  5. 对于 Event types(事件类型),选择 Hard Bounces, Opens and Clicks(硬退信、打开和点击)。然后,选择 Next(下一步)。
  6. 对于 Destination type(目标类型),选择 Amazon CloudWatch
  7. 对于 Name(名称),输入 CloudWatch 目标的名称。
  8. 对于 Value Source(值来源),选择 Message Tag(消息标签)。
  9. 对于 Dimension Name(维度名称),请输入您希望用于 CloudWatch 中该指标的名称 。
  10. 对于 Default Value(默认值),您可以输入任何值,例如 Null
  11. 选择 Next(下一步),然后选择 Add Destination(添加目标)。

发送测试电子邮件以验证电子邮件打开、点击和退回通知

Amazon SES 有一个邮箱模拟器,您可以用它来测试电子邮件打开、点击和退回。

1.    打开 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 指标

  1. 打开您用作 Amazon SNS 主题订阅端点的电子邮件地址收件箱。确认您已收到打开、点击和退回通知。
  2. 打开 CloudWatch 控制台
  3. 在导航窗格中,请选择 Metrics(指标)。
  4. All metrics(所有指标)视图中,选择 SES
  5. 选择您创建的指标。
  6. 验证图表显示了您发送用于模拟打开、点击和退回的测试电子邮件。

指定电子邮件标题中的配置集

要将您创建的配置集应用于电子邮件,必须传递电子邮件标题中的配置集。有关更多信息,请参阅在您发送电子邮件时指定配置集


这篇文章对您有帮助吗?


您是否需要账单或技术支持?