我已配置AWS Lambda,以便所有错误都转到DLQ。它默认已经有2次重试,之后它应该将数据推送到DLQ。早些时候,一切都工作正常,重试2次,然后它发送数据到DLQ。但现在,突然之间,它停止了工作。现在,它在抛出异常时正在重试。可能是什么原因?
这是我故意抛出错误的代码片段。
def lambda_handler(event, context):
eventSource = event['Records'][0]['EventSource'] . ## On this line, error will be thrown as the message I am sending does not abide by this format and it is giving KeyError.
....
....
....
我不知道应该检查什么? AWS Lambda重试并发送到DLQ的异常类型是否有任何限制。
答案 0 :(得分:3)
我发现问题发生的原因。这是因为在AWS Lambda中,我使用测试配置设置进行测试,这是一个同步调用。如果我们从SNS或SQS正确调用lambda函数,那么它将是事件调用。并且仅在事件调用的情况下,lambda重试是可能的。
http://docs.aws.amazon.com/lambda/latest/dg/retries-on-errors.html