当前位置: 首页 > 知识库问答 >
问题:

无法将Lambda目标添加到现有CloudWatch规则

弓胜泫
2023-03-14

我想将Lambda目标添加到现有的CloudWatch规则中。我使用以下内容引用现有规则:

rule = events.Rule.from_event_rule_arn(self, "Rule",event_rule_arn='')

后来我添加了一个目标:

rule.add_target(targets.LambdaFunction(lambdaFn))

执行cdk synth或deploy时,出现以下错误:

对象没有属性add_target

我知道IRule元素没有那种方法,但我找不到一个明确的方法来实现我所需要的。

我还尝试在Lambda中使用事件源,但出现以下错误:

无法识别的事件源,必须是kinesis、Dynamodb stream或sqs。

共有2个答案

郑乐池
2023-03-14

正如米朗所言,这是不可能做到的。

我的用例需要创建几个Lambda函数并为它们设置相同的触发器,而CloudWatch规则不适合它,因为每个规则有5个目标的硬限制。我使用SNS,如下所示:

sns_topic = aws_sns.Topic.from_topic_arn(scope, id, topic_arn=config)

lambdaFn.add_event_source(aws_lambda_event_sources.SnsEventSource(sns_topic))
吴浩博
2023-03-14

我认为这是不可能的。您需要引用lambda函数并从规则所属的堆栈管理规则。

 类似资料:
  • 我正在开发一个需要安排任务的应用程序,所以我使用AWS Lambda。但是,调度时间是动态的,因为它取决于用户请求,所以不能使用AWS Console进行调度,所以我使用AWS JavascriptSDK来调度它。这是流程: 创建CloudWatch规则(这个成功了,我可以在控制台看到正在创建的规则 为lambda的策略添加权限,以便cloud dwatch事件可以调用它(Lambda函数代码对所

  • 我创建了具有以下事件模式的CloudWatch规则: 其思想是,每当集群的状态发生变化时,它都会调用lambda函数。 现在的问题是,当它调用lambda函数时,会出现以下错误: 带代码: 那么,我应该使用哪个类来解析CloudWatch规则事件? 谢谢你。

  • 我正在尝试创建一个以Lambda函数为目标的AWS Eventbridge规则。我可以添加规则和目标,但当我尝试通过RoleArn设置lambda权限时,Cloudformation堆栈部署失败,目标arn不支持RoleArn:aws:lambda:us-east-1:1234567890:功能:联系lambda消费新客户。(服务:AmazonCloudWatchEvents;状态代码:400;错

  • 我有一个附加在CloudWatch事件上的lambda,一旦事件触发,lambda将通过以下代码删除规则: 提前感谢!

  • 我正在尝试将规则添加到已经使用KieBuilder定义和构建的KiePackage。 我知道您可以使用以下方式删除规则: 但是否有一个添加规则的等价物?我尝试添加一个新的。将drl文件导入KieFileSystem,并使用KieScanner获取更改,但它似乎不起作用: 当我评估一个事实与ksesion1时,新规则不存在于KieBase中。我错过了什么吗?

  • 问题内容: 尝试从此处使用unstruction将alamofire添加到快速项目 完成所有这些步骤,清理项目很多计时器并重新启动XCode,没有任何帮助。错误不会消失 http://i.stack.imgur.com/kNU3R.png “无法为’Alamofire’加载基础模块”,无关紧要 我所做的更改: 1)将项目文件添加到我的项目 i.stack.imgur.com/eUe8E.png 2