如何使用 .NET SDK 通过 Lambda 目标创建 EventBridge 规则
How to create EventBridge Rule with Lambda Target using the .NET SDK
- 我有一个现有的 Lambda 函数。
- 我可以使用控制台创建一个以我的 Lambda 作为目标的新规则。
- 当我通过控制台这样做时,它会自动创建一个在 Lambda 配置屏幕上可见的“EventBridge (CloudWatch Events)”触发器。
- 规则执行并成功调用 Lambda。
尝试使用 C# 和 SDK(nuget 包:AWSSDK.EventBridge)自动执行上述步骤,我采取以下步骤:
- 我调用 PutRule 成功了。
- 我调用 PutTarget 成功了
Rule & Target 在 EventBridge 控制台中看起来非常正常且功能正常,但 Trigger 根本没有出现在 Lambda 函数中,并且 Lambda 从未被 Rule 调用。
如果我现在编辑规则,不要更改任何内容,只需单击控制台中的“更新”,它就会成功地使用触发器进行连接。
我猜这是两种情况之一:
- 我需要向我的代码添加一个额外的请求 - 比如 PutTriggerOnLambda
- 或者我只是缺少 IAM 权限,它正在悄无声息地失败
有人有什么建议吗?
我从 AWS 获得了一些非常好的技术支持,并了解到我缺少的步骤是向 lambda 函数添加权限以允许事件桥接规则触发它。
此文档 2.2 通过 CLI 解释了缺少的步骤:https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/RunLambdaSchedule.html
此文档说明了如何通过 SDK 执行此操作:https://docs.aws.amazon.com/lambda/latest/dg/API_AddPermission.html
- 我有一个现有的 Lambda 函数。
- 我可以使用控制台创建一个以我的 Lambda 作为目标的新规则。
- 当我通过控制台这样做时,它会自动创建一个在 Lambda 配置屏幕上可见的“EventBridge (CloudWatch Events)”触发器。
- 规则执行并成功调用 Lambda。
尝试使用 C# 和 SDK(nuget 包:AWSSDK.EventBridge)自动执行上述步骤,我采取以下步骤:
- 我调用 PutRule 成功了。
- 我调用 PutTarget 成功了
Rule & Target 在 EventBridge 控制台中看起来非常正常且功能正常,但 Trigger 根本没有出现在 Lambda 函数中,并且 Lambda 从未被 Rule 调用。
如果我现在编辑规则,不要更改任何内容,只需单击控制台中的“更新”,它就会成功地使用触发器进行连接。
我猜这是两种情况之一:
- 我需要向我的代码添加一个额外的请求 - 比如 PutTriggerOnLambda
- 或者我只是缺少 IAM 权限,它正在悄无声息地失败
有人有什么建议吗?
我从 AWS 获得了一些非常好的技术支持,并了解到我缺少的步骤是向 lambda 函数添加权限以允许事件桥接规则触发它。
此文档 2.2 通过 CLI 解释了缺少的步骤:https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/RunLambdaSchedule.html
此文档说明了如何通过 SDK 执行此操作:https://docs.aws.amazon.com/lambda/latest/dg/API_AddPermission.html