使用 Amazon SES事件發佈監控電子郵件傳送 - Amazon Simple Email Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Amazon SES事件發佈監控電子郵件傳送

若要讓您精細追蹤電子郵件傳送,您可以設定 Amazon SES 根據您定義的 EventBridge 特徵,將電子郵件傳送事件發佈至 Amazon CloudWatch、Amazon Data Firehose、Amazon Pinpoint 、Amazon Simple Notification Service 或 Amazon。

您可以追蹤數種類型的電子郵件傳送事件,包括傳送、交付、開啟、點選、退信、抱怨、拒收、算圖失敗和傳遞延遲。此資訊用於操作性與分析性用途時可能有幫助。例如,您可以將電子郵件傳送資料發佈至 , CloudWatch 並建立追蹤電子郵件行銷活動效能的儀表板,或者您可以使用 Amazon SNS 在特定事件發生時傳送通知給您。

事件發佈如何與組態集和訊息標籤搭配使用

若要使用事件發佈,您必須先設定一或多個組態集。組態設定將指定發佈事件的位置以及要發佈哪些事件。接著,每次傳送電子郵件時,您需要提供組態集名稱以及一或多個訊息標籤,以名稱值對的格式來分類電子郵件。例如,若您要宣傳書籍,可以在傳送相關行銷活動的電子郵件時,將訊息標籤命名為類型,並指定科幻西部的值。

根據您使用的電子郵件傳送介面,您可以將訊息標籤作為 SendEmailAPI操作EmailTags欄位的參數提供,或將訊息標籤新增至 SES特定的電子郵件標頭 X-SES-MESSAGE-TAGS。如需組態集的詳細資訊,請參閱 使用 Amazon SES 中的組態集

除了您指定的訊息標籤之外, SES也會將自動標籤新增至您傳送的訊息。您不需要執行任何額外的步驟,就能使用自動標籤。

下表列出自動套用至您使用 傳送之訊息的自動標籤SES。

SES 自動標籤
自動名稱標籤 描述
ses:caller-identity 傳送電子郵件SES的使用者IAM身分。
ses:configuration-set 與電子郵件相關的組態設定名稱。
ses:from-domain 「寄件人」地址的網域。
ses:outgoing-ip SES 用來傳送電子郵件的 IP 地址。
ses:source-ip 呼叫者用於傳送電子郵件的 IP 地址。
ses:source-tls-version 呼叫者用來傳送電子郵件的TLS通訊協定版本。
ses:outgoing-tls-version SES 用來傳送電子郵件的TLS通訊協定版本。

電子郵件行銷活動的精細意見回饋

ses:feedback-id-<a or b> 標籤是選用的訊息標籤,您可以將其視為混合或半自動標籤,雖然類似於上一節討論的自動標籤,但差別在於您必須手動新增標籤並使用ses:字首索引鍵。您最多可以使用兩個定義為 ses:feedback-id-a和 的標籤ses:feedback-id-b

當您指定這些標籤時, SES會自動將其附加到標準Feedback-ID標頭,用於提供交付統計資料,例如投訴和垃圾郵件率,作為回饋循環的一部分 (FBL),請參閱 回饋迴圈Feedback-ID 標頭由 用來SES收集投訴資訊的識別符 SESInternalID和靜態標籤 Amazon SES組成,識別SES為傳送平台,例如:

FeedBackId:feedback-id-a:feedback-id-b:((SESInternalID):(AmazonSES))

這些選用的意見回饋 ID 標籤是用來產生精細意見回饋的方式,例如您在電子郵件行銷活動中傳送的訊息。您可以在SendEmail操作請求的 EmailTags 欄位中指定為訊息標籤ses:feedback-id-<a or b>來使用 ,如下列範例所示:

{ "FromEmailAddress": "noreply@example.com", "Destination": { "ToAddresses": [ "customer@example.net" ] }, "Content": { "Simple": { "Subject": { "Data": "Hello and welcome" }, "Body": { "Text": { "Data": "Lorem ipsum dolor sit amet." }, "Html": { "Data": "Lorem ipsum dolor sit amet." } } } }, "EmailTags": [ { "Name": "ses:feedback-id-a", "Value": "new-members-campaign" }, { "Name": "ses:feedback-id-b", "Value": "football-campaign" } ], "ConfigurationSetName": "football-club" }

如果以原始格式傳送,您會將 ses:feedback-id-<a or b> 作為訊息標籤新增至 SES特定的標頭 X-SES-MESSAGE-TAGS

也可以在 Amazon 中追蹤ses:feedback-id-<a or b>訊息標籤 CloudWatch ,方法是將其指定為 CloudWatch 值來源,就像任何其他訊息標籤一樣,請參閱 新增 CloudWatch 事件目的地(需支付額外費用,請參閱 的每指標價格。) CloudWatch

事件發佈的使用方式

下列各節包含設定和使用SES事件發佈所需的資訊。

事件發佈術語

下列清單定義與SES事件發佈相關的術語。

電子郵件傳送事件

與您提交至 之電子郵件結果相關聯的資訊SES。傳送事件包含以下內容:

  • 傳送 – 傳送請求成功,Amazon SES會嘗試將訊息傳遞至收件人的郵件伺服器。(如果使用帳戶層級或全域禁止, SES仍會將其視為傳送,但交付會遭到禁止。)

  • RenderingFailure – 由於範本呈現問題,因此電子郵件未傳送。範本資料遺失或是範本參數與資料不相符時,可能會出現此事件類型。(只有在您使用 SendTemplatedEmailSendBulkTemplatedEmailAPI操作傳送電子郵件時,才會發生此事件類型。)

  • 拒絕 – Amazon SES接受電子郵件,但判斷電子郵件包含病毒,且未嘗試將其交付給收件人的郵件伺服器。

  • 交付 – Amazon SES成功將電子郵件交付到收件人的郵件伺服器。

  • 退信硬退信代表收件人的郵件伺服器永久拒絕電子郵件。(只有當SES不再嘗試傳送電子郵件時,才會包含軟退信。 一般而言,這些軟退信表示交付失敗,但在某些情況下,即使郵件成功到達收件人收件匣,也可以傳回軟退信。 這通常發生在收件人傳送 out-of-office自動回覆時。 在此 AWS re:Post 文章 中進一步了解軟退信。)

  • Complaint (投訴) - 電子郵件已成功遞送至收件人的郵件伺服器,但收件人將其標示為垃圾郵件。

  • DeliveryDelay – 由於發生暫時性問題,因此無法將電子郵件傳送至收件人的郵件伺服器。例如,當收件人的收件匣已滿時,或接收電子郵件伺服器暫時發生問題時,可能會發生傳遞延遲。

  • Subscription (訂閱) - 已成功遞送電子郵件,但收件人透過按一下電子郵件標頭中的 List-Unsubscribe 或頁尾中的 Unsubscribe 連結來更新訂閱偏好設定。

  • Open (開啟) - 收件人收到訊息,並在其電子郵件用戶端中開啟。

  • Click (點按) - 收件人點按電子郵件中包含的一或多個連結。

組態集

一組規則,定義SES要發佈電子郵件傳送事件的目標,以及您要發佈的電子郵件傳送事件類型。當您傳送想要使用事件發佈的電子郵件時,需指定與該電子郵件相關的組態設定。

事件目的地

您發佈SES電子郵件傳送事件的 AWS 服務。您所設定的每個事件目的地皆僅屬於一個且是唯一的組態設定。

訊息標籤

您根據事件發佈用途來分類電子郵件的名稱/值組。範例包括行銷活動/書籍行銷活動/衣物。傳送電子郵件時,您可以將訊息標籤指定為 API 呼叫的參數,或指定為 SES特定的電子郵件標頭。

自動標籤

自動包含在事件發佈報告中的訊息標籤。組態集名稱、「來自」地址的網域、呼叫者的傳出 IP 地址、傳SES出 IP 地址和呼叫者的IAM身分都有自動標籤。