程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了AWS CDK 获取 DynamoDB Stream ARN 返回 null大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决AWS CDK 获取 DynamoDB Stream ARN 返回 null?

开发过程中遇到AWS CDK 获取 DynamoDB Stream ARN 返回 null的问题如何解决?下面主要结合日常开发的经验,给出你关于AWS CDK 获取 DynamoDB Stream ARN 返回 null的解决方法建议,希望对你解决AWS CDK 获取 DynamoDB Stream ARN 返回 null有所启发或帮助;

是否可以使用 AWS CDK 获取 DynamoDB 表的流 ARN?

我尝试了以下方法,但是当我使用 gettableStreamArn 访问 streamArn 时,它返回 null。

Itable table = table.fromtableArn(this,"exisTingtable",<<exisTingtableArn>>);

System.out.println("Itable Stream Arn : " + table.gettableStreamArn());

也尝试使用 fromtableAttribute,但流 arn 仍然是空的。

 Itable table =
          table.fromtableAttributes(
              this,tableAttributes.builder().tableArn(<<exisTingtableArn>>).build());

解决方法

当您的 Java 代码运行时,该值很可能不可用。

CDK 有一个多步骤的过程来执行您的代码:

  1. 您的 Java 代码被执行并触发底层 JSII 层
  2. JSII 执行 CDK 的底层 Javascript/Typescript 实现
  3. Typescript 层生成 CloudFormation 代码
  4. CloudFormation 代码(和其他资产)被发送到 AWS API
  5. CloudFormation 执行模板并配置资源

某些属性仅在步骤 5) 中可用,在此之前仅包含最终放入 CloudFormation 模板的内部引用。如果我没记错的话,Table Stream ARN 就是其中之一。

这意味着如果您想要该值,您必须创建一个显示它们的 CloudFormation 输出,该输出将在部署期间填充。

,

这对于 fromTableArn 方法是不可能的...请参阅此处的文档:

https://docs.aws.amazon.com/cdk/api/latest/docs/aws-dynamodb-readme.html#imporTing-exisTing-tables

如果您打算使用 tableStreamArn(包括间接的,对于 例如通过创建一个 @aws-cdk/aws-lambda-event-source.DynamoEventsource 在导入的 tablE)您必须使用 Table.fromTableAttributes 方法和 必须填充 tableStreamArn 属性。

大佬总结

以上是大佬教程为你收集整理的AWS CDK 获取 DynamoDB Stream ARN 返回 null全部内容,希望文章能够帮你解决AWS CDK 获取 DynamoDB Stream ARN 返回 null所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。