首页 > 解决方案 > 找出谁调用了 AWS lambda 函数

问题描述

我的 AWS lambda 函数在多个地方被调用,例如 api-gateway、aws-SNS 和 cloud-watch 事件。有没有办法找出谁调用了 lambda 函数?我的 lambda 函数的逻辑取决于调用者。

实现这一点的另一种方法是使用三个不同的 lambda 函数,但如果我可以在单个 Lambda 函数本身中找到调用者信息,我不想那样做。

标签: amazon-web-servicesaws-lambdaaws-api-gatewayamazon-cloudwatchamazon-sns

解决方案


我会查看该event对象,因为所有三个服务都将具有event不同的结构

例如,对于 CloudWatch Events,我会source检查event. 对于 SNS,我会Records检查httpMethod.

但是您可以检查给定服务特有的任何其他属性。如果您不确定,只需打印出来以从您的函数中为三个服务记录示例事件,然后检查最适合查找的属性。


推荐阅读