AWS Lambda调用后向SNS响应

3

Lambda L1已订阅SNS S1。

每次调用L1时,L1都会返回状态代码和消息。

当我通过向S1发布消息来调用L1时,我如何验证从L1返回的消息?

我需要以Java编程方式进行此操作。任何提示都将不胜感激。

2个回答

6
亚马逊SNS向订阅者发布消息。一旦成功将消息发送给订阅者(例如,发送到AWS Lambda以触发Lambda函数),它就不会等待响应。
因此,无法查看由SNS触发的Lambda函数的响应代码。
您可以查看Lambda函数生成的CloudWatch日志,但您可能需要插入代码将响应推送到日志中(例如通过Print语句)。

2
在SNS触发器或任何其他异步触发器中,没有任何“服务器”接收Lambda的返回值。
因此,死信队列是一种处理这种情况下错误的特性,可能正是您正在寻找的。
如果您希望验证每个返回的消息(而不仅仅是Lambda的失败),可以将其配置为将返回消息发送到另一个队列(SNS / SQS)并使用另一个Lambda进行验证。
如果您只是想监视应用程序(因此在验证失败时没有任何立即采取的措施),则可以寻找监视解决方案 - 无论是配置CloudWatch指标、Sentry还是其他。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接