我可以通过给定的 AWS 集成将 SNS(或 SQS)消息保存到 S3 吗?

Chi*_*hip 9 amazon-s3 amazon-sqs amazon-web-services amazon-sns

我想将所有 SNS 消息保存到 S3,以便我可以保留完整的历史记录。目的是有能力在诊断和发布时回头看,稍后索引并使用它来审计,重放,重建数据等。现在,我只想将它们转储到S3(便宜),稍后我会在需要时深入研究它。

  • 我不需要转换或操作数据,我现在可以转储它

我可以使用 AWS 提供的集成来实现这一点,还是需要编写自己的 HTTP 服务或 Lambda?

如果可以避免,我宁愿不必编写和维护 lambda 或服务。

到目前为止,我所看到的是,我可以将HTTP 端点设置为 SNS 订阅者,但它的消息格式与S3 http api 不同,因此需要 lambda 来转换它。也是初始订户确认消息。这是不可能的,我应该开始使用我自己的服务/lambda 吗?

Nic*_*las 1

据我所知这是不可能的。

编写一个可以持久保存 SNS 或 SQS 消息的 lambda 是非常简单的。

您还可以使用sqs-s3-logger之类的东西(请注意,此代码基于您无法从 SQS 触发 Lambda 的事实,现在这是可能的,因此您不需要 cron 作业)