本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用监控亚马逊SNS话题 CloudWatch
亚马逊SNS和亚马逊 CloudWatch 是集成在一起的,因此您可以收集、查看和分析每条有效的亚马逊SNS通知的指标。 CloudWatch 为亚马逊配置完毕后SNS,您可以更好地了解亚马逊SNS主题、推送通知和SMS交付的表现。例如,您可以设置警报,以便在 Amazon SNS 指标达到指定阈值时向您发送电子邮件通知,例如NumberOfNotificationsFailed
。有关 Amazon SNS 发送到的所有指标的列表 CloudWatch,请参阅亚马逊SNS指标。有关 Amazon SNS 推送通知的更多信息,请参阅通过 Amazon 发送移动推送通知 SNS。
注意
系统会自动收集您 CloudWatch 为 Amazon SNS 主题配置的指标,并每隔 1 分钟推送 CloudWatch 一次。这些指标是针对所有符合活跃 CloudWatch 指南的话题收集的。自该主题 CloudWatch 的上次活动(即任何API通话)起,该话题最多六小时被视为处于活动状态。
中报告的亚马逊SNS指标不收取任何费用 CloudWatch;它们是作为亚马逊SNS服务的一部分提供的。
查看 Amazon 的 CloudWatch 指标 SNS
您可以使用 CloudWatch 控制台、 CloudWatch自己的命令行界面 (CLI) 或以编程方式SNS使用来监控 Amazon 的 CloudWatch API指标。以下过程展示如何使用 AWS Management Console访问指标。
使用 CloudWatch 控制台查看指标
-
在导航面板上,选择 Metrics。
-
在所有指标选项卡上 SNS,选择,然后选择以下维度之一:
-
国家、SMS类型
-
PhoneNumber
-
Topic Metrics (主题指标)
-
Metrics with no dimensions (无维度指标)
-
-
要查看详细信息,请选择特定项目。例如,如果您选择 “主题指标”,然后选择 NumberOfMessagesPublished,则会显示在 6 小时的时间范围内 1 分钟内发布的 Amazon SNS 消息的平均数量。
-
要查看亚马逊SNS使用量指标,请在所有指标选项卡上,选择使用情况,然后选择目标亚马逊SNS使用量指标(例如
NumberOfMessagesPublishedPerAccount
)。
为 Amazon SNS 指标设置 CloudWatch 警报
CloudWatch 还允许您在指标达到阈值时设置警报。例如,您可以为指标设置警报 NumberOfNotificationsFailed,以便在采样周期内达到指定的阈值时,系统会发送一封电子邮件通知来通知您该事件。
使用 CloudWatch 控制台设置警报
-
登录 AWS Management Console 并打开 CloudWatch 控制台,网址为https://console.aws.amazon.com/cloudwatch/
。 -
选择警报,然后选择创建警报按钮。这样会启动“Create Alarm”向导。
-
滚动浏览 Amazon SNS 指标,找到您要设置警报的指标。选择该指标创建一个警报并选择继续。
-
填写指标的名称、描述、阈值、时间值,然后选择继续。
-
按照报警器说明选择“Alarm”。如果您 CloudWatch 想在达到警报状态时向您发送电子邮件,请选择现有的 Amazon SNS 主题或选择 “创建新电子邮件主题”。如果您选择 新建电子邮件主题,则可以为新主题设置名称和电子邮件地址。此清单将会被保存下来并在将来报警器的下列框显示。选择继续。
注意
如果您使用 “创建新电子邮件主题” 创建新的 Amazon SNS 主题,则必须先验证电子邮件地址,然后他们才能收到通知。当报警器进入报警状态时,才发送电子邮件。如果在电子邮件地址验证之前报警状态发生变化,那么他们不会收到通知。
-
此时,“Create Alarm”向导会给您一次机会检查您准备创建的报警器。如果你想做一些变动,那么您可使用右边的“Edit”链接。如果您满意,请选择创建警报。
有关使用 CloudWatch 和警报的更多信息,请参阅CloudWatch文档
亚马逊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 未能传送的消息数量。 对于亚马逊SQSSMS、电子邮件或移动推送终端节点,当亚马逊SNS停止尝试发送消息时,该指标将以 1 为增量。对于我们的HTTPHTTPS终端节点,该指标包括每一次失败的交付尝试,包括初次尝试之后的重试次数。对于所有其他终端节点,消息传输失败时计数增加 1(不考虑尝试次数)。 此指标不包括被订阅筛选策略拒绝的消息。 您可以控制HTTP终端节点的重试次数。有关更多信息,请参阅 Amazon SNS 消息传送重试次数。 单位:计数 有效维度:应用程序 PhoneNumber、平台和 TopicName 有效统计数据:总和、平均值 |
AWS/SNS |
NumberOfNotificationsFilteredOut |
被订阅筛选策略拒绝的消息数量。如果消息属性与策略属性不匹配,筛选策略会拒绝消息。 单位:计数 有效维度:应用程序 PhoneNumber、平台和 TopicName 有效统计数据:总和、平均值 |
AWS/SNS |
NumberOfNotificationsFilteredOut-MessageAttributes |
被基于属性的筛选的订阅筛选策略拒绝的消息数量。 单位:计数 有效维度:应用程序 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 |
自当前日历月开始以来您因发送SMS消息而产生的费用。 您可以为该指标设置警报,以了解您的 month-to-date费用何时接近您账户的每月SMS支出配额。当 Amazon SNS 确定发送SMS消息的费用超过此配额时,它会在几分钟内停止发布SMS消息。 有关设置每月SMS支出配额的信息,或有关申请增加支出配额的信息 AWS,请参阅在 Amazon 中设置SMS消息偏好 SNS。 单位:USD 有效尺寸:无 有效统计数据:总和 |
AWS/SNS |
SMSSuccessRate
|
成功SMS传送消息的比率。 单位:计数 有效尺寸: PhoneNumber 有效统计数据:总和、平均值、数据样本 |
Amazon SNS 指标的尺寸
Amazon 简单通知服务会将以下维度发送至 CloudWatch。
维度 |
描述 |
---|---|
Application
|
对应用程序对象进行筛选,这些对象表示在支持的推送通知服务之一中注册的应用程序和设备,例如APNs和FCM。 |
Application,Platform
|
对应用程序和平台对象进行筛选,其中平台对象用于支持的推送通知服务,例如APNs和FCM。 |
Country |
按SMS邮件的目的地国家或地区进行筛选。国家或地区由其 ISO 3166-1 alpha-2 代码表示。 |
PhoneNumber
|
当您SMS直接向电话号码(不含主题)发布内容时,会根据电话号码进行筛选。 |
Platform
|
筛选推送通知服务的平台对象,例如APNs和FCM。 |
TopicName
|
筛选亚马逊SNS主题名称。 |
SMSType |
筛选消息的SMS消息类型。可以为 promotional 或 transactional。 |
Amazon SNS 使用量指标
Amazon 简单通知服务向发送以下使用量指标 CloudWatch。
命名空间 |
服务 |
指标 |
资源 |
类型 |
描述 |
---|---|---|---|---|---|
AWS/Usage | SNS | ResourceCount |
NumberOfMessagesPublishedPerAccount |
资源 |
|
AWS/Usage | SNS | ResourceCount |
ApproximateNumberOfTopics |
资源 |
|
AWS/Usage | SNS | ResourceCount |
ApproximateNumberOfFilterPolicies |
资源 |
|
AWS/Usage | SNS | ResourceCount |
ApproximateNumberOfPendingSubscriptions |
资源 |
|
AWS/Usage | SNS | CallCount |
|
API |
|