本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
本教程说明如何部署事件重播管道并为该管道订阅 Amazon SNS 主题。此过程会自动将与管道关联的 AWS SAM 模板转换为 AWS CloudFormation 堆栈,然后将该堆栈部署到您的 AWS 账户。此过程还会创建和配置构成事件重播管道的资源集,包括一个 Amazon SQS 队列和一个 Lambda 函数。
有关筛选事件的更多信息,请参阅本指南中的 Amazon SNS 订阅筛选策略。
-
登录 AWS Lambda 控制台
。 -
在导航面板上,选择 Functions (函数),然后选择 Create function (创建函数)。
-
在 Create function (创建函数) 页面上,执行以下操作:
-
依次选择 Browse serverless app repository(浏览无服务器应用程序存储库)、Public applications(公共应用程序)、Show apps that create custom roles or resource policies(显示创建 IAM 角色或资源策略的应用程序)。
-
搜索
fork-event-replay-pipeline
,然后选择该应用程序。
-
-
在 fork-event-replay-pipeline 页面中,执行以下操作:
-
在 Application settings (应用程序设置) 部分中,输入 Application name (应用程序名称)(例如,
my-app-replay
)。注意
对于每个部署,应用程序名称必须唯一。如果您重复使用应用程序名称,则部署将仅更新先前部署的 AWS CloudFormation 堆栈(而不是创建新的堆栈)。
-
(可选)输入以下LogLevel设置之一以执行应用程序的 Lambda 函数:
-
DEBUG
-
ERROR
-
INFO
(默认值) -
WARNING
-
-
(可选 ReplayQueueRetentionPeriodInSeconds)输入 Amazon SQS 重播队列保留消息的时间长度(以秒为单位)。如果您不输入值,则使用 1209600 秒(14 天)。
-
对于 TopicArn,输入要订阅此分叉管道实例的 Amazon SNS 主题的 ARN。
-
对于 DestinationQueueName,输入 Lambda 重播函数向其转发消息的 Amazon SQS 队列的名称。
-
(可选)对于 SubscriptionFilterPolicy,输入 JSON 格式的 Amazon SNS 订阅筛选策略,用于筛选传入的事件。筛选策略决定缓冲哪些事件以进行重播。如果您不输入值,则不使用筛选(缓冲所有事件以进行重播)。
-
选择 I acknowledge that this app creates custom IAM roles, resource policies and deploys nested applications (我确认此应用程序创建自定义 IAM 角色和资源策略并部署嵌套应用程序),然后选择 Deploy (部署)。
-
在 “部署状态 my-app-replay
” 页面上,Lambda 会显示 “您的应用程序正在部署中” 状态。
在资源部分中, AWS CloudFormation 开始创建堆栈并显示每个资源的 CREATE_IN_PROGRESS 状态。该过程完成后, AWS CloudFormation 将显示 “创建_完成” 状态。
部署完成后,Lambda 将显示 Your application has been deployed (您的应用程序已部署完成)状态。
将在由事件重播管道自动预置的 Amazon SQS 索引中缓冲发布到您的 Amazon SNS 主题的消息以进行重播。
注意
默认情况下,禁用重播。要启用重播,请导航到 Lambda 控制台上的函数页面,展开 Designer 部分,选择 SQS 磁贴,然后在 SQS 部分中,选择 Enabled(启用)。