使用監控 Amazon SNS 主題 CloudWatch - Amazon Simple Notification Service

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

使用監控 Amazon SNS 主題 CloudWatch

整合了 Amazon SNS 和亞馬遜 CloudWatch ,因此您可以收集、檢視和分析每個使用中 Amazon SNS 通知的指標。 CloudWatch 為 Amazon SNS 設定完成設定後,您可以更深入地瞭解 Amazon SNS 主題、推送通知和簡訊交付的效能。例如,您可以設定警示,在達到 Amazon SNS 指標的指定閾值 (例如 NumberOfNotificationsFailed) 時傳送電子郵件通知。如需 Amazon SNS 傳送到的所有指標清單 CloudWatch,請參閱Amazon SNS 指標。如需使用 Amazon SNS 推送通知的詳細資訊,請參閱 行動推送通知

注意

您 CloudWatch 為 Amazon SNS 主題設定的指標會每隔 1 分鐘自動收集並推送到 CloudWatch 。這些量度會收集到符合作用中 CloudWatch 準則的所有主題上。從主題的最後一個活動(即任何 API 呼叫)起,主題最多會被視為作用中的六個小時。 CloudWatch

中報告的 Amazon SNS 指標不收取任何費用 CloudWatch;這些指標是作為 Amazon SNS 服務的一部分提供。

檢視 CloudWatch Amazon SNS 的指標

您可以使用 CloudWatch 主控台、 CloudWatch自己的命令列界面 (CLI) 或以程式設計方式使用 CloudWatch API 監控 Amazon SNS 的指標。下列程序顯示如何使用 AWS Management Console存取指標。

使用 CloudWatch 主控台檢視指標
  1. 登入 CloudWatch 主控台

  2. 在導覽面板上,選擇 Metrics (指標)

  3. All metrics (所有指標) 標籤上,選擇 SNS,然後選擇下列其中一個維度:

    • Country, SMS Type (國家/地區,簡訊類型)

    • PhoneNumber

    • Topic Metrics (主題指標)

    • Metrics with no dimensions (無維度的指標)

  4. 若要檢視更多詳細資訊,請選擇特定項目。例如,如果您選擇「主題指標」,然後選擇 NumberOfMessagesPublished,則會顯示在 6 小時的時間範圍內,1 分鐘期間內已發佈的 Amazon SNS 訊息平均數量。

  5. 若要檢視 Amazon SNS 用量指標,請在 All metrics (所有指標) 索引標籤上選擇 Usage (用量),然後選取 target Amazon SNS usage metric (針對 Amazon SNS 用量指標) (例如 NumberOfMessagesPublishedPerAccount)。

設定 Amazon SNS 指標的 CloudWatch 警示

CloudWatch 也可讓您在達到量度的臨界值時設定警示。例如,您可以為量度設定警示 NumberOfNotificationsFailed,以便在取樣期間內達到您指定的臨界值數目時,系統會傳送電子郵件通知通知您事件。

使用 CloudWatch 主控台設定鬧鐘
  1. 請登入 AWS Management Console 並開啟 CloudWatch 主控台,網址為 https://console.aws.amazon.com/cloudwatch/

  2. 選擇 Alarms (警示),然後選擇 Create Alarm (建立警示) 按鈕。這會啟動 Create Alarm (建立警示) 精靈。

  3. 捲動 Amazon SNS 指標以找到您要設定警示的指標。選取要建立警示的指標,然後選擇 Continue (繼續)。

  4. 填入指標的 Name (名稱)、Description (描述)、Threshold (閾值) 和 Time (時間) 值,然後選擇 Continue (繼續)。

  5. 選擇 Alarm (警示) 做為警示狀態。如果您想要 CloudWatch 在達到警示狀態時傳送電子郵件給您,請選擇現有的 Amazon SNS 主題或選擇「建立新的電子郵件主題」。如果您選擇 Create New Email Topic (建立新的電子郵件主題),即可為新的主題設定名稱和電子郵件地址。此清單將會儲存並顯示在下拉式方塊中,供未來警示用。選擇 Continue (繼續)。

    注意

    如果您使用 Create New Email Topic (建立新的電子郵件主題) 來建立新的 Amazon SNS 主題,電子郵件地址必須先經過驗證才會接收通知。電子郵件只有在警示進入警示狀態時才會傳送。如果此警示狀態在驗證電子郵件地址之前發生變更,就不會收到通知。

  6. 此時,Create Alarm (建立警示) 精靈會提供您機會檢閱您將建立的警示。如果您需要進行任何變更,可以使用右邊的 Edit (編輯) 連結。編輯好之後,選擇 Create Alarm (建立警示)。

如需使用 CloudWatch 和警示的詳細資訊,請參閱CloudWatch文件

Amazon SNS 指標

Amazon SNS 會將下列指標傳送到 CloudWatch。

命名空間 指標 描述

AWS/SNS

NumberOfMessagesPublished

發佈至 Amazon SNS 主題的訊息數量。

單位:計數

有效維度:應用程式 PhoneNumber、平台和 TopicName

有效統計資料:總和

AWS/SNS

NumberOfNotificationsDelivered

成功從 Amazon SNS 主題傳送至訂閱端點的訊息數量。

為了讓傳遞嘗試成功,端點的訂閱必須接受訊息。訂閱接受訊息的情況為 a.) 它缺少篩選條件政策或 b.) 其篩選條件政策包含符合指派給該訊息的屬性。如果訂閱拒絕訊息,此指標不會計入傳遞嘗試次數。

單位:計數

有效維度:應用程式 PhoneNumber、平台和 TopicName

有效統計資料:總和

AWS/SNS

NumberOfNotificationsFailed

Amazon SNS 無法傳送之訊息的數量。

對於 Amazon SQS、電子郵件、簡訊或行動推送端點,當 Amazon SNS 停止嘗試傳遞訊息,此指標會以 1 的方式遞增。對於 HTTP 或 HTTPS 端點,指標包含每個失敗的傳遞嘗試,包括首次嘗試之後的重試次數。對於所有其他端點,計數會在訊息傳遞失敗時增加 1 (不論嘗試次數多寡)。

這個指標不包含被訂閱篩選政策拒絕的訊息。

您可以控制 HTTP 端點的重試數目。如需詳細資訊,請參閱 Amazon SNS 訊息傳遞重試

單位:計數

有效維度:應用程式 PhoneNumber、平台和 TopicName

有效統計資料:總和、平均

AWS/SNS

NumberOfNotificationsFilteredOut

被訂閱篩選政策拒絕的訊息數。當訊息屬性不符政策屬性時,篩選政策會拒絕訊息。

單位:計數

有效維度:應用程式 PhoneNumber、平台和 TopicName

有效統計資料:總和、平均

AWS/SNS

NumberOfNotificationsFilteredOut-MessageAttributes

被以屬性為基礎篩選的訂閱篩選政策拒絕的訊息數。

單位: CountValid

有效維度:應用程式 PhoneNumber、平台和 TopicName

有效統計資料:總和、平均

AWS/SNS

NumberOfNotificationsFilteredOut-MessageBody

被以承載為基礎篩選的訂閱篩選政策拒絕的訊息數。

單位:計數

有效維度:應用程式 PhoneNumber、平台和 TopicName

有效統計資料:總和、平均

AWS/SNS

NumberOfNotificationsFilteredOut-InvalidAttributes

因為訊息屬性無效而被訂閱篩選條件政策拒絕的訊息數量,例如,因為屬性 JSON 的格式不正確。

單位:計數

有效維度:應用程式 PhoneNumber、平台和 TopicName

有效統計資料:總和、平均

AWS/SNS

NumberOfNotificationsFilteredOut-NoMessageAttributes

因為訊息沒有屬性而被訂閱篩選條件政策拒絕的訊息數量。

單位:計數

有效維度:應用程式 PhoneNumber、平台和 TopicName

有效統計資料:總和、平均

AWS/SNS

NumberOfNotificationsFilteredOut-InvalidMessageBody

因訊息內文無效而被訂閱篩選政策拒絕的訊息數,例如,JSON 訊息內文無效。

單位:計數

有效維度:應用程式 PhoneNumber、平台和 TopicName

有效統計資料:總和、平均

AWS/SNS

NumberOfNotificationsRedrivenToDlq

已移至無效字母佇列的訊息數量。

單位:計數

有效維度:應用程式 PhoneNumber、平台和 TopicName

有效統計資料:總和、平均

AWS/SNS

NumberOfNotificationsFailedToRedriveToDlq

無法移至無效字母佇列的訊息數量。

單位:計數

有效維度:應用程式 PhoneNumber、平台和 TopicName

有效統計資料:總和、平均

AWS/SNS

PublishSize

已發佈訊息的大小。

單位:字節

有效維度:應用程式 PhoneNumber、平台和 TopicName

有效統計資料:最小值、最大值、平均值和計數

AWS/SNS

SMSMonthToDateSpentUSD

您從當月月初開始傳送簡訊所累計的費用。

您可以為此指標設定警示,以瞭解您的 month-to-date 費用何時接近帳戶的每月 SMS 支出配額。當 Amazon SNS 判定傳送簡訊會致使成本超過此配額時,就會在幾分鐘內停止發步簡訊。

如需有關每月簡訊費用配額的設定資訊,或者要求 AWS提高費用配額的相關資訊,請參閱 在 Amazon 中設定SMS簡訊偏好設定 SNS

單位:美元

有效尺寸:

有效統計資料:總和

AWS/SNS

SMSSuccessRate

成功傳送簡訊的比率。

單位:計數

有效尺寸: PhoneNumber

有效統計資料:總和、平均值、資料樣本

Amazon SNS 指標的維度

Amazon 簡易通知服務會將下列維度傳送到 CloudWatch。

維度

描述

Application

篩選應用程式物件,該物件代表向其中一個支援的推送通知服務 (例如 APN 和 FCM) 註冊的應用程式和裝置。

Application,Platform

篩選應用程式和平台物件,其中平台物件適用於支援的推送通知服務,例如 APN 和 FCM。

Country

篩選簡訊的目的地國家/地區或區域。國家/地區或區域是以其 ISO 3166-1 alpha-2 代碼表示。

PhoneNumber

當您直接將簡訊發佈至電話號碼 (不含主題) 時,篩選電話號碼。

Platform

篩選適用於推送通知服務 (例如 APN 和 FCM) 的平台物件。

TopicName

篩選 Amazon SNS 主題名稱。

SMSType

篩選簡訊的訊息類型。可以是促銷型交易型

Amazon SNS 用量指標

Amazon 簡單通知服務會將下列使用量指標傳送至 CloudWatch。

命名空間

服務

指標

資源

類型

描述

AWS/用量 SNS ResourceCount NumberOfMessagesPublishedPerAccount 資源
  • 在您的 AWS 帳戶中發佈到 Amazon SNS 主題的訊息數量。

  • 單位:無

  • 有效的統計資訊:總和

AWS/用量 SNS ResourceCount ApproximateNumberOfTopics 資源
  • 您帳戶中的大約主題數 AWS 目。

  • 單位:無

  • 有效統計資訊:平均數、下限、上限、總和

AWS/用量 SNS ResourceCount ApproximateNumberOfFilterPolicies 資源
  • 您  AWS  帳戶中的大致篩選政策數量。

  • 單位:無

  • 有效統計資訊:平均數、下限、上限、總和

AWS/用量 SNS ResourceCount ApproximateNumberOfPendingSubscriptions 資源
  • 您 AWS 帳戶中的大約待處理訂閱數量。

  • 單位:無

  • 有效統計資訊:平均數、下限、上限、總和

AWS/用量 SNS CallCount
  • AddPermission

  • CheckIfPhoneNumberIsOptedOut

  • CreatePlatformApplication

  • CreatePlatformEndpoint

  • ConfirmSubscription

  • CreateSMSSandboxPhoneNumber

  • CreateTopic

  • DeleteEndpoint

  • DeletePlatformApplication

  • DeleteSMSSandboxPhoneNumber

  • DeleteTopic

  • GetEndpointAttributes

  • GetPlatformApplicationAttributes

  • GetSMSAttributes

  • GetSMSSandboxAccountStatus

  • GetSubscriptionAttributes

  • GetTopicAttributes

  • ListEndpointsByPlatformApplication

  • ListOriginationNumbers

  • ListPhoneNumbersOptedOut

  • ListPlatformApplications

  • ListSMSSandboxPhoneNumbers

  • ListSubscriptions

  • ListSubscriptionsByTopic

  • ListTagsForResource

  • ListTopics

  • OptInPhoneNumber

  • RemovePermission

  • SetEndpointAttributes

  • SetPlatformApplicationAttributes

  • SetSMSAttributes

  • SetSubscriptionAttributes

  • SetTopicAttributes

  • Subscribe

  • Unsubscribe

  • UntagResource

  • VerifySMSSandboxPhoneNumber

API
  • 您 AWS 帳戶中所選取之 Amazon SNS API 的 API 呼叫次數。

  • 單位:無

  • 有效的統計資訊:總和