gpt4 book ai didi

java - 如何在AWS CDK java中将目标添加到事件规则?

转载 作者:行者123 更新时间:2023-12-02 09:29:41 25 4
gpt4 key购买 nike

我已从 cdk 的初始版本迁移到最新版本。由于发生了很多变化,我不得不更改很多代码。我有一个事件规则,可以按特定的时间表触发 lambda。在旧版本中,我可以使用 json 输入模板添加 lambda 作为目标。

如何使用最新版本做到这一点。我正在使用 Java 进行开发

Function lambdaFunction = new Function(this, functionName + "lambda", FunctionProps.builder()
.handler(functionName + ".handler")
.functionName(functionName + "-" + parameter.getValueAsString())
.runtime(Runtime.NODEJS_8_10)
.code(Code.bucket(lambdaS3Bucket, collectPaymentsS3BucketKey.getValueAsString()))
.role(lambdaExecutionRole)
.timeout(Duration.seconds(60))
.environment(environmentMap)
.build());
Rule cloudwatchRule = new Rule(this, "id", RuleProps.builder()
.description("this triggers to collect installment payments scheduled everyday")
.ruleName("smartpay-schedule-payments" + "-" + parameter.getValueAsString())
.schedule(Schedule.expression("0/5 * * * ? *"))
.build());

我正在尝试这个 cloudwatchRule.addTarget(lambdaFunction);

但是它不起作用。如何在 aws cdk java 中创建 IRuleTarget 对象。

最佳答案

实际上,在添加事件目标的依赖项后我就能够弄清楚

cloudwatchRule.addTarget(new LambdaFunction(lambdaFunction, LambdaFunctionProps.builder()
.event(RuleTargetInput.fromText("{\"installmentStatus\" : \"SCHEDULED\" }"))
.build()));

关于java - 如何在AWS CDK java中将目标添加到事件规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58088182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com