我想访问推送通知的 Amazon Simple Notification Service(Amazon SNS)主题传输日志。
简短描述
Amazon SNS 支持记录发送到主题的推送通知消息的传送状态。配置消息传送状态属性后,这些推送通知消息的日志条目将发送到 Amazon CloudWatch Logs。记录消息传送状态可提供以下操作见解:
- 了解消息是否已传送到 Amazon SNS 端点。
- 识别从 Amazon SNS 端点发送到 Amazon SNS 的响应。
- 确定消息停留时间(从发布时间戳到移交给 Amazon SNS 端点之前的时间)。
配置推送通知传送状态日志
以下部分提供使用 AWS 管理控制台配置传送状态日志记录的步骤。您还可以使用 AWS SDK 或 AWS 命令行界面(AWS CLI)来配置消息传送日志。
**注意:**如果您在运行 AWS CLI 命令时收到错误,请参阅排查 AWS CLI 错误。此外,请确保您使用的是最新版本的 AWS CLI。
完成下面的步骤:
- 打开 Amazon SNS 控制台。
- 在导航菜单上,展开移动,然后选择推送通知。
- 在平台应用程序部分中,选择您要为其设置传送状态的平台应用程序。
- 选择编辑。
- 传送状态记录(可选)。
- 对于成功采样率,输入您想要接收 CloudWatch Logs 的成功消息的百分比。默认情况下,会记录所有失败的传送。
- 在 IAM 角色部分中,对于服务角色,选择创建新服务角色,然后选择创建新角色。系统会打开 AWS Identity and Access Management(IAM)控制台。
注意:如果您已经拥有具有正确权限的 IAM 角色,则可以通过选择使用现有服务角色来使用该服务角色。
- 在 IAM 控制台权限请求页面上,选择允许,授予 Amazon SNS 写入权限,以代表您使用 CloudWatch Logs。
- 返回 Amazon SNS 控制台后,选择保存更改。
这为成功和失败的传送创建了一个 IAM 角色,该角色遵循针对 Amazon SNS 的以下政策和信任关系。
传送成功的 IAM 角色:
arn:aws:iam::1111111111:role/SNSSuccessFeedback
传送失败的 IAM 角色:
arn:aws:iam::1111111111:role/SNSFailureFeedback
政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents",
"logs:PutMetricFilter",
"logs:PutRetentionPolicy"
],
"Resource": [
"*"
]
}
]
}
信任关系:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "sns.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
查看推送通知传送状态日志
-
打开 Amazon CloudWatch 控制台。
-
在导航窗格中,展开日志,然后选择日志组。
-
在“筛选”搜索框中,输入 sns,仅查找 Amazon SNS 的日志组。
-
sns/your-AWS-region/your-account_ID/app/platform_name/application_name 日志组包含传送成功的日志。
sns/us-east-1/1111111111/app/GCM/Test1
sns/us-east-1/1111111111/app/APNS_SANDBOX/Test2
sns/us-east-1/1111111111/app/APNS/Test3
sns/your-AWS-region/your-account_ID/app/platform_name/application_name**/Failure** 日志组包含传送失败的日志:
sns/us-east-1/1111111111/app/GCM/Test1/Failure
sns/us-east-1/1111111111/app/APNS_SANDBOX/Test2/Failure
sns/us-east-1/1111111111/app/APNS/Test3/Failure
-
选择您要查看的 Amazon SNS 日志组。
-
在日志流选项卡上,选择特定的日志流以查看应用程序端点传送日志。
-
要查看消息的传送状态,请展开日志事件并检查 providerResponse。有关推送通知服务响应代码的列表,请参阅平台响应代码。
相关信息
如何对 Amazon SNS 中的 FCM 移动推送通知失败进行故障排除?
如何对 Amazon SNS 中的 APN 移动推送通知失败进行故障排除?
移动应用属性