amazon-web-services - 查找触发 Lambda 函数的 SQS 名称
问题描述
我正在寻找一种可以找到触发 Lambda 的 SQS 名称的方法。
用例:
我有 2 个 SQS 队列(SQS 名称 ABC 和 XYZ),我想将这两个队列订阅到单个 Lambda 函数并根据消息来自的队列执行不同的操作(例如,在 DDB 表中插入消息)。
例如。如果消息来自队列名称 - ABC 那么它应该插入到 DDB1 Dynamo 表中,否则如果消息来自队列名称 - XYZ 然后插入到 DDB2 表中。
目前我们已将 DDB1 值设置为 Lambda 的环境变量,如果消息来自 XYZ,则应将其覆盖为 DDB2 值。
提前感谢您的帮助,如果问题框架句子不正确,我们深表歉意:)
解决方案
这是 Amazon SQS 将发送到 AWS Lambda 函数的示例消息。事实上,我是从Lambda的Test函数中提取出来的:
{
"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。
推荐阅读
- java - DDS 阅读器不丢弃消息
- c# - Revit API - 创建新的 ScheduleField
- python - 自动解决单词搜索 (4x4)
- android - 为什么'ChangeNotifier' 在 Flutter 中发送通知时有 O(n^2) 时间?
- tcl - Tcl:添加实例类的不同方式之间的区别
- apache-spark - 如何将数组拆分为块并找到块的总和并将输出作为数组存储在 pyspark 中
- mysql - 从jooq中的日期获取月份名称
- flutter - 如何调用方法并检索嵌套在颤振中的json数组
- python - 如何删除默认 Python,在 Raspbian 上安装最新版本
- database - 如何使用 bteq 脚本转换日期格式?