我想在每次发送SQS消息时调用lambda。我尝试使用以下模式设置Cloudwatch事件的规则:
{
"source": [
"aws.sqs"
]
}
不幸的是,lambda从未被调用过。我已经确保lambda的角色具有SQS政策。 我怎样才能做到这一点?
答案 0 :(得分:7)
CloudWatch Events只能用于捕获services that generate events中的活动。
SQS不会生成事件。
实现所需内容的最简单方法是创建一个SNS主题,并为主题订阅SQS队列和Lambda函数。然后,不是直接向队列发送消息,而是将消息发布到主题,SNS将其放入队列并调用Lambda。
http://docs.aws.amazon.com/sns/latest/dg/SNS_Scenarios.html#SNSFanoutScenario
答案 1 :(得分:0)
AWS最近引入了SQS作为Lambda的触发器,可以自动调用SQS中的消息。