Step Function (eu-central-1) 是否已支持 AWS-SDK Timestream WriteRecords?

问题描述 投票:0回答:1

嘿 AWS 团队,我正在从我的步骤函数集成 AWS SDK 调用,以便在时间流表上写入一些记录。这是 SFN 定义:

"WriteRecords": {
      "Type": "Task",
      "Next": "Success",
      "Parameters": {
        "DatabaseName": "TimestreamDatabase",
        "Records": [
          {}
        ],
        "TableName": "ChainTableTimestream"
      },
      "Resource": "arn:aws:states:::aws-sdk:timestreamwrite:writeRecords"
    },

不幸的是,我在执行时遇到了问题

An error occurred while executing the state 'WriteRecords' (entered at the event id #7). The resource provided in the resource ARN is currently not supported.

很高兴知道:我的步骤函数具有 describeEndpointswriteRecords 权限。我知道我的记录数组是空的,但这并不重要,因为问题可能不是来自 Timestream API,而是来自调用之前(SFN 奇怪的行为)。

根据您的文档,您刚刚在 2024 年 1 月添加了 Timestream Write 支持。我不知道我到底错过了什么。

我也尝试过时间流查询步骤。我遇到了同样的错误。

我没有使用CDK生成,而是手动更新了step函数,基本上是相同的行为。它在另一个地区也崩溃了。

amazon-web-services aws-step-functions amazon-timestream
1个回答
0
投票

我会考虑实施另一种方法,您可以使用 TimeStream API 手动构建 Lambda 函数。以下是有关如何使用 TimeStream API 手动构建 Lambda 函数,然后将其集成到 AWS Step Functions 状态机的高级分步详细信息。我将假设在这些细节中使用 Java。

在Java中实现TimeStream API操作

首先按照 AWS SDK for Java v2 TimeStream 示例的自述文件中的说明进行操作。

确保您可以使用提供的代码示例成功将记录写入 TimeStream 数据库和表。

TimeStream API 操作正常运行后,您可以继续下一步。

创建 Lambda 函数:

在 AWS 控制台中创建新的 Java Lambda 函数。

在函数的代码中,包含您在上一步中实现的 TimeStream API 操作。

在 AWS 控制台中测试 Lambda 函数,确保其按预期工作并且可以成功与您的 TimeStream 数据库交互。

记下 Lambda 函数的 ARN(Amazon 资源名称),因为您在下一步中将需要它。

将 Lambda 函数集成到 AWS Step Functions 状态机:

在 AWS 控制台中创建新的 AWS Step Functions 状态机。

在状态机定义中,包含一个

Task
状态,用于调用您在上一步中创建的 Lambda 函数。

确保在

Resource
状态的
Task
字段中正确指定 Lambda 函数 ARN。

通过触发状态机并验证 TimeStream 操作是否按预期执行来测试状态机。

通过执行这些步骤,您将能够使用 TimeStream API 手动构建 Lambda 函数,然后将它们集成到 AWS Step Functions 状态机中。这种方法使您可以更好地控制 TimeStream 操作和整体工作流程编排。

© www.soinside.com 2019 - 2024. All rights reserved.