将CloudTrail事件转换为Lambda函数

时间:2017-07-07 15:17:19

标签: amazon-web-services aws-lambda amazon-cloudwatch amazon-cloudtrail

有没有办法将事件信息,特别是导致事件的服务的ARN获取到lambda函数?

在我之前的question中,我向使用Cloudwatch和Cloudtrail获取信息提出了一些帮助。我认为这主要只是对规则的误解,但现在我担心是否有一个通用的解决方案。

我知道我可以成功地为特定服务执行此操作,但我希望有一个通用规则来触发该功能。 Cloudwatch日志或事件似乎是正确的答案,但由于我的Cloudwatch Cloudtrail规则存在问题,我不再对此充满信心。

为了完全实现我的目标,我希望在创建任何服务时都有一个lambda函数触发器,并且可以访问新服务的ARN,以便我可以对该过程进行验证。

1 个答案:

答案 0 :(得分:1)

是的,但是,每个事件都有可能具有不同的事件属性,您需要检查从何处获取此信息。

例如,如果您的lambda由 CloudFormation 触发,则可以使用let label: UILabel = { let label = UILabel() label.frame = CGRect(x: 40, y: 100, width: self.view.frame.width, height: 30) label.text = "Hello" label.textColor = UIColor.red label.translatesAutoresizingMaskIntoConstraints = false return label }() 获取堆栈ID(ARN)。

event['StackId']

您可以在http://docs.aws.amazon.com/lambda/latest/dg/eventsources.html中看到有关每个事件的详细信息。

如果您想实时调试以检查事件内容,可以找到一些解决方案,例如lambda-toolkit