本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
监控亚马逊SNSSMS活动
通过监控您的SMS活动,您可以跟踪目的地电话号码、成功或失败的配送、失败的原因、成本和其他信息。亚马逊通过在控制台中汇总统计数据、向亚马逊 CloudWatch发送信息以及将每日SMS使用报告发送到您指定的 Amazon S3 存储桶来提供SNS帮助。
查看SMS配送统计信息
您可以使用 Amazon SNS 控制台查看有关您最近SMS配送的统计数据。
登录 Amazon SNS 控制台
。 -
在控制台菜单中,将区域选择器设置为支持消息SMS传递的区域。
-
在导航面板上,选择短信 (SMS)。
-
在移动短信 (SMS) 页面的投递统计信息部分,查看您的促销和交易SMS消息发送图表。每个图表显示之前 15 天内的以下数据:
-
促销短信送达率
-
交易短信传送率
-
在短信偏好设置部分,您还可以选择 “编辑” 按钮,进入存储每日使用量报告的 Amazon S3 存储桶。有关更多信息,请参阅 查看来自亚马逊的每日SMS使用量报告 SNS。
查看 Amazon 的SMS配送 CloudWatch 指标和日志
使用 Amazon CloudWatch 和 Amaz CloudWatch on Logs 来监控您的SMS消息传送。
查看 Amazon CloudWatch 指标
亚马逊SNS会自动收集有关您的SMS消息传输的指标并将其推送到亚马逊 CloudWatch。您可以使用 CloudWatch 监控这些指标并创建警报,以便在指标超过阈值时提醒您。例如,您可以监控 CloudWatch 指标以了解您的SMS配送费率和 month-to-date SMS费用。
有关监控 CloudWatch 指标、设置 CloudWatch 警报和可用指标类型的信息,请参阅使用监控亚马逊SNS话题 CloudWatch。
查看 CloudWatch 日志
您可以通过启用 Amazon 写入 Amazon SNS Logs 来收集有关成功和失败SMS消息 CloudWatch 传输的信息。对于您发送的每SMS条消息,Amazon 都会SNS写一份日志,其中包含消息价格、成功或失败状态、失败原因(如果消息失败)、消息停留时间和其他信息。
启用和查看SMS消息 CloudWatch 日志
登录 Amazon SNS 控制台
。 -
在控制台菜单中,将区域选择器设置为支持消息SMS传递的区域。
-
在导航面板上,选择短信 (SMS)。
-
在移动短信 (SMS) 页面的短信偏好设置部分,选择编辑。
-
在下一页上,展开 Delivery status logging(传输状态日志记录)部分。
-
对于成功采样率,请指定 Amazon SNS 将在日志中 CloudWatch 写入日志的成功SMS交付百分比。例如:
-
要仅将失败传输写入日志,请将此值设为 0。
-
要将 10% 的成功传输写入日志,请将其设为 10。
如果您未指定百分比,Amazon SNS 会为所有成功交付写入日志。
-
-
为提供所需的权限,请执行以下操作之一:
-
要创建新的服务角色,请选择 Create new service role(创建新的服务角色),然后选择 Create new roles(创建新角色)。在下一页上,选择 “允许” 以授予 Amazon 对您账户资源的SNS写入权限。
-
要使用现有的服务角色,请选择 “使用现有服务角色”,然后将ARN名称粘贴到 “成功和失败的交付IAM角色” 框中。
您指定的服务角色必须允许对账户资源进行写入访问。有关创建IAM角色的更多信息,请参阅《IAM用户指南》中的为 Amazon 服务创建角色。
-
-
选择 Save changes(保存更改)。
-
返回移动短信 (SMS) 页面,转至传送状态日志部分以查看所有可用的日志。
注意
根据目的地电话号码的承运人,送货日志最多可能需要 72 小时才能显示在 Amazon SNS 控制台中。
成功SMS交付的示例日志
成功交付的传SMS送状态日志将与以下示例类似:
{ "notification": { "messageId": "34d9b400-c6dd-5444-820d-fbeb0f1f54cf", "timestamp": "2016-06-28 00:40:34.558" }, "delivery": { "phoneCarrier": "My Phone Carrier", "mnc": 270, "numberOfMessageParts": 1, "destination": "+1XXX5550100", "priceInUSD": 0.00645, "smsType": "Transactional", "mcc": 310, "providerResponse": "Message has been accepted by phone carrier", "dwellTimeMs": 599, "dwellTimeMsUntilDeviceAck": 1344 }, "status": "SUCCESS" }
SMS传送失败的日志示例
传送失败的SMS传送状态日志将与以下示例类似:
{ "notification": { "messageId": "1077257a-92f3-5ca3-bc97-6a915b310625", "timestamp": "2016-06-28 00:40:34.559" }, "delivery": { "mnc": 0, "numberOfMessageParts": 1, "destination": "+1XXX5550100", "priceInUSD": 0.00645, "smsType": "Transactional", "mcc": 0, "providerResponse": "Unknown error attempting to reach phone", "dwellTimeMs": 1420, "dwellTimeMsUntilDeviceAck": 1692 }, "status": "FAILURE" }
SMS配送失败原因
providerResponse
属性中提供失败的原因。SMS由于以下原因,邮件可能无法传送:
-
被电话运营商作为垃圾消息屏蔽
-
目的地位于阻止列表中
-
电话号码无效
-
消息正文无效
-
电话运营商已屏蔽此消息
-
电话运营商目前无法访问/不可用
-
电话已被屏蔽 SMS
-
电话位于阻止列表中
-
电话当前无法访问/可用
-
电话号码已退出
-
此传输会超过最高价格
-
尝试联系电话时发生未知错误
查看来自亚马逊的每日SMS使用量报告 SNS
您可以通过订阅 Amazon SNS 的每日使用报告来监控您的SMS配送。对于您每天至少发送一条SMS消息,Amazon 会将一份SNS使用情况报告作为CSV文件发送到指定的 Amazon S3 存储桶。在 S3 存储桶中显示SMS使用情况报告需要 24 小时。
每日使用量报告信息
使用情况报告包含您从账户发送的每SMS封邮件的以下信息。
请注意,此报告不包含发送到已选择退出的收件人的消息。
-
消息发布时间 (inUTC)
-
消息 ID
-
目标电话号码
-
消息类型
-
传输状态
-
留言价格(英寸USD)
-
分段编号(如果一条消息过长,则会拆分为多个分段)
-
分段总数
注意
如果 Amazon SNS 未收到部件号,则该值将设置为零。
订阅每日使用量报告
要订阅每日使用情况报告,您必须通过适当的权限创建 Amazon S3 存储桶。
为您的每日使用情况报告创建 Amazon S3 存储桶
-
从发送SMS消息 Amazon Web Services 账户 的,登录 Amazon S3 控制台
。 -
选择 Create Bucket(创建存储桶)。
-
对于存储桶名称,我们建议您输入对账户和组织唯一的名称。例如,使用模式
<my-bucket-prefix>-<account_id>-<org-id>
。有关存储桶名称约定和限制的信息,请参阅 Amazon Simple Storage Service 用户指南中的存储桶命名规则。
-
选择创建。
-
在 All Buckets(所有存储桶)表中,选择存储桶。
-
在 Permissions(权限)部分中,选择 Bucket policy(存储桶策略)。
-
在存储桶策略编辑器窗口中,提供允许亚马逊SNS服务委托人写入您的存储桶的策略。有关示例,请参阅存储桶策略的示例。
如果您使用示例策略,请记得替换
amzn-s3-demo-bucket
使用您在步骤 3 中选择的存储桶名称。 -
选择保存。
订阅每日使用情况报告
-
登录 Amazon SNS 控制台
。 -
在导航面板上,选择短信 (SMS)。
-
在短信 (SMS) 页面的短信偏好设置部分,选择编辑。
-
在 Edit text messaging preferences (编辑文本消息收发首选项) 页上,在 Details (详细信息) 部分中,指定 Amazon S3 bucket name for usage reports (使用率报告的 Amazon S3 存储桶名称)。
-
选择 Save changes(保存更改)。
存储桶策略的示例
以下策略允许 Amazon SNS 服务主体执行s3:PutObject
s3:GetBucketLocation
、和s3:ListBucket
操作。
Amazon 为所有服务提供工具,其服务委托人已被授予访问您账户中资源的权限。当 Amazon S3 存储桶策略语句中的主体为Amazon 服务主体时,您可以使用 aws:SourceArn
或 aws:SourceAccount
全局条件键以防止出现混淆代理人问题。要限制哪些存储桶中的哪些区域和账户可以接收每日使用情况报告,请使用 aws:SourceArn
,如下面的示例所示。如果您不想限制可生成这些报告的区域,请使用 aws:SourceAccount
限制生成报告的账户。如果您不知道该ARN资源的类型,请使用aws:SourceAccount
。
在创建 Amazon S3 存储桶以接收来自亚马逊的每日SMS使用报告时,使用以下示例,其中包括混乱的副手保护SNS。
{ "Version": "2008-10-17", "Statement": [{ "Sid": "AllowPutObject", "Effect": "Allow", "Principal": { "Service": "sns.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*", "Condition": { "StringEquals": { "aws:SourceAccount": "
account_id
" }, "ArnLike": { "aws:SourceArn": "arn:aws:sns:region
:account_id
:*" } } }, { "Sid": "AllowGetBucketLocation", "Effect": "Allow", "Principal": { "Service": "sns.amazonaws.com" }, "Action": "s3:GetBucketLocation", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket", "Condition": { "StringEquals": { "aws:SourceAccount": "account_id
" }, "ArnLike": { "aws:SourceArn": "arn:aws:sns:region
:account_id
:*" } } }, { "Sid": "AllowListBucket", "Effect": "Allow", "Principal": { "Service": "sns.amazonaws.com" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket", "Condition": { "StringEquals": { "aws:SourceAccount": "account_id
" }, "ArnLike": { "aws:SourceArn": "arn:aws:sns:region
:account_id
:*" } } } ] }
注意
您可以将使用情况报告发布到 Amazon S3 存储桶,这些存储桶由 Amazon S3 策略中 Condition
元素指定的 Amazon Web Services 账户 拥有。要将使用情况报告发布到其他人 Amazon Web Services 账户
拥有的 Amazon S3 存储桶,请参阅如何从另一个存储桶复制 S3 对象 Amazon Web Services 账户?
每日使用量报告的示例
在您订阅每日使用量报告后,Amazon 每天都会将包含使用情况数据的CSV文件SNS放在以下位置:
<amzn-s3-demo-bucket>
/SMSUsageReports/<region>
/YYYY
/MM
/DD
/00x
.csv.gz
每个文件可包含最多 50000 条记录。如果一天的记录超过此配额,Amazon SNS 将添加多个文件。
下面显示了一个示例报告:
PublishTimeUTC,MessageId,DestinationPhoneNumber,MessageType,DeliveryStatus,PriceInUSD,PartNumber,TotalParts
2016-05-10T03:00:29.476Z,96a298ac-1458-4825-a7eb-7330e0720b72,1XXX5550100,Promotional,Message has been accepted by phone carrier,0.90084,0,1
2016-05-10T03:00:29.561Z,1e29d394-d7f4-4dc9-996e-26412032c344,1XXX5550100,Promotional,Message has been accepted by phone carrier,0.34322,0,1
2016-05-10T03:00:30.769Z,98ba941c-afc7-4c51-ba2c-56c6570a6c08,1XXX5550100,Transactional,Message has been accepted by phone carrier,0.27815,0,1
查看来自亚马逊的月度SMS使用量报告 SNS
按国家/地区跟踪您的每月SMS使用情况。
月度使用报告信息
使用情况报告包含您从账户发送的每SMS封邮件的以下信息。该报告不包括发送给已选择退出的收件人的消息。
-
每月使用成本 (inUSD)
-
作为请求向 Amazon 发布的SMS消息数量 SNS
-
亚马逊SNS打电话的次数 Amazon End User Messaging SMS
-
配送到每个国家产生的费用
查看月度使用情况报告
查看月度使用情况报告
-
登录 Amazon Web Services Management Console 并打开 Amazon Billing 控制台,网址为https://console.aws.amazon.com/billing/
。 -
在导航面板上,选择 Cos t Explorer。
-
在 “报告参数” 面板上的 “服务” 字段中,选择 Pinpoint.
注意
如果这是您第一次访问 Amazon Cost Management,您将收到以下消息:
由于这是您第一次来访,因此需要一些时间来准备成本和使用数据。请在 24 小时后回来查看。
-
在 “使用类型” 字段中,选择要测量的单位类型。
成本和使用情况图表显示您的选择的输出。
-
(可选)选择将报告保存到库中。