Amazon web services 查找触发Lambda函数的SQS名称
我正在寻找一种方法,我们可以找到触发Lambda的SQS名称 用例: 我有2个SQS队列(SQS名称ABC和XYZ),我希望将这两个队列订阅到单个Lambda函数,并根据消息来自的队列执行不同的操作(例如,在DDB表中插入消息) 例如,如果消息来自队列名称-ABC,则应插入DDB1 Dynamo表;如果消息来自队列名称-XYZ,则应插入DDB2表 目前,我们已将DDB1值设置为Lambda的环境变量,如果消息来自XYZ,则应将其覆盖为DDB2值Amazon web services 查找触发Lambda函数的SQS名称,amazon-web-services,aws-lambda,amazon-sqs,Amazon Web Services,Aws Lambda,Amazon Sqs,我正在寻找一种方法,我们可以找到触发Lambda的SQS名称 用例: 我有2个SQS队列(SQS名称ABC和XYZ),我希望将这两个队列订阅到单个Lambda函数,并根据消息来自的队列执行不同的操作(例如,在DDB表中插入消息) 例如,如果消息来自队列名称-ABC,则应插入DDB1 Dynamo表;如果消息来自队列名称-XYZ,则应插入DDB2表 目前,我们已将DDB1值设置为Lambda的环境变量,如果消息来自XYZ,则应将其覆盖为DDB2值 提前感谢您的帮助,如果问题框架句不正确,请道歉:)
提前感谢您的帮助,如果问题框架句不正确,请道歉:)以下是Amazon SQS将发送给AWS Lambda函数的示例消息。事实上,我是从Lambda中的测试函数中提取的:
{
"Records": [
{
"messageId": "19dd0b57-b21e-4ac1-bd88-01bbb068cb78",
"receiptHandle": "MessageReceiptHandle",
"body": "Hello from SQS!",
"attributes": {
"ApproximateReceiveCount": "1",
"SentTimestamp": "1523232000000",
"SenderId": "123456789012",
"ApproximateFirstReceiveTimestamp": "1523232000001"
},
"messageAttributes": {},
"md5OfBody": "7b270e59b47ff90a553787216d55d91d",
"eventSource": "aws:sqs",
"eventSourceARN": "arn:aws:sqs:ap-southeast-2:123456789012:MyQueue",
"awsRegion": "ap-southeast-2"
}
]
}
有一个名为eventSourceARN
的字段,它将提供触发该函数的SQS队列的ARN