当前位置: 首页 > 知识库问答 >
问题:

如何调试Amazon SQS订阅SNS的问题

穆德海
2023-03-14

到目前为止,我的代码在启动时查找主题和队列,并创建缺少的任何内容。这似乎起作用了,我可以在AWS管理控制台中看到SNS主题和SQS队列,并且我可以看到队列订阅了该主题,但是当我将消息发布到该主题时,队列中没有任何东西结束。

即使我使用管理控制台中的“publish”按钮手动发布消息,队列仍然是空的。

我把主题和队列上的权限都改成了‘每个人都可以做每件事’就是为了消除这种可能性。我的代码收到一个消息ID响应发布,并且没有错误,每个API调用都返回一个200(OK)状态。

从这里我能去哪里弄清楚为什么它不起作用?

共有1个答案

华谭三
2023-03-14

有几个选择-

  1. 启用CloudTrail并监视日志
  2. 查看CloudWatch日志以确定任何权限问题
  3. 在AWS支持下打开一张票。

理想情况下,您不会在应用程序中创建资源,而是将这些资源解耦到CloudFormation或至少CLI脚本中。如果您需要动态创建这些资源的能力,那么使用AWS IoT Message Broker可能是一个更好的选择,因为它支持临时消息传递资源--http://docs.AWS.amazon.com/IoT/latest/developerguide/ioT-message-broker.html

 类似资料:
  • 我已经创建了一个基本的SNS话题。这是一个HTTP(和HTTPS)请求,在我的web服务器上的一个endpoint。web服务器不在AWS上。 SNS订阅指向的endpoint向我发送包含请求的所有标头的电子邮件。即使邮件头是空的,也会发送电子邮件。任何类型的请求都会产生一封电子邮件。 无论使用什么HTTP谓词(GET、POST等),endpoint都将处理请求。 我认为这可能是我使用一个加密SS

  • 我创建了一个亚马逊SNS主题,并添加了2个订阅。 确认后正常工作的电子邮件id。 amazon ec2实例的HTTP URL。

  • 我有一个将消息发布到AWS SNS主题字符串的NodeJS应用程序和一个AWS SQS订阅。在SQS控制台上,我可以看到发布的消息。但是,我不清楚SQS队列的访问策略。 问题 当将消息传递到SQS队列时,作为订阅的结果,哪个用户是有效的?与发表该主题的人相同? 只有在使用时,才能使消息流入队列。那么,我应该如何定义一个限制性策略,使消息只能作为订阅的结果写入队列? 创建具有权限的队列的AWS SQ

  • 是否有一种方法可以使用AWS CLI列出特定SQS队列订阅的所有AWS SNS主题? 我已经知道如何看到一个SNS主题上的订阅者列表,但这只有在我知道SNS主题的名称时才起作用。在这种情况下,我只知道SQS队列的名称。 我在网上搜索什么也找不到。

  • 我有几个。Net 5.0微服务,RabbitMQ作为消息代理。现在我正在切换到AWS SQS。很少有服务在侦听相同的消息(这是通过RabbitMQ中的Exchange完成的)。在AWS中,这可以通过将SQS队列订阅到SNS主题来实现。我创建了SNS fifo topic和SQS fifo队列,将这些队列订阅到topic。当我将消息直接发布到队列时,一切都会立即工作,但当我将消息发布到SNS主题时,

  • 我已经设置了AWS SNS设置与一个主题说'a'。我正在使用Http订阅这个SNS主题(尝试了手动使用AWS控制台联机和使用Java代码)。在这两种情况下,我得到的都是“待确认”。但是,SNS不向提供的URL发送初始“SubscriptionConfironment”。 请注意,我的endpoint已准备好接收http POST通知。当我从我的身边手动发布一个帖子时,我会看到我的servlet正在