StreamJournalToKinesis - Amazon Quantum Ledger Database (Amazon QLDB)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

StreamJournalToKinesis

为给定的 Amazon QLDB 分类账创建日记账流。流捕获提交到分类账的日志的每个文档修订版本,并将数据传送到指定的 Amazon Kinesis Data Streams 资源。

请求语法

POST /ledgers/name/journal-kinesis-streams HTTP/1.1 Content-type: application/json { "ExclusiveEndTime": number, "InclusiveStartTime": number, "KinesisConfiguration": { "AggregationEnabled": boolean, "StreamArn": "string" }, "RoleArn": "string", "StreamName": "string", "Tags": { "string" : "string" } }

URI 请求参数

请求使用以下 URI 参数。

name

分类账的名称。

长度限制:长度下限为 1。最大长度为 32。

模式:(?!^.*--)(?!^[0-9]+$)(?!^-)(?!.*-$)^[A-Za-z0-9-]+$

必需:是

请求体

请求接受采用 JSON 格式的以下数据。

ExclusiveEndTime

指定流结束时间的日期和时间(不内含)。如果不定义此参数,则流将无限期运行,直到您取消它。

ExclusiveEndTime 必须采用 ISO 8601 日期和时间格式以及通用协调时间(UTC)。例如:2019-06-13T21:36:34Z

类型:时间戳

必需:否

InclusiveStartTime

开始流式传输日记账数据的开始日期和时间(内含)。此参数必须采用 ISO 8601 日期和时间格式以及通用协调时间 (UTC)。例如:2019-06-13T21:36:34Z

InclusiveStartTime 不能是未来时间,必须在 ExclusiveEndTime 之前。

如果您提供的 InclusiveStartTime 是在分类账的 CreationDateTime 之前,则 QLDB 有效地将其默认视为分类账的 CreationDateTime

类型:时间戳

必需:是

KinesisConfiguration

流请求的 Kinesis 数据流目标的配置设置。

类型:KinesisConfiguration 对象

必需:是

RoleArn

IAM 角色的 Amazon 资源名称(ARN),该角色授予日记账流将数据记录写入 Kinesis 数据流资源的 QLDB 权限。

要在请求日志流时将角色传递给 QLDB,您必须具有对 IAM 角色资源执行 iam:PassRole 操作的权限。这是所有日志流请求所必需的。

类型:字符串

长度约束:最小长度为 20。长度上限为 1600。

必需:是

StreamName

要分配给 QLDB 日记账流的名称。用户定义的名称有助于识别和指示流的用途。

您的流名称在给定分类账的其他活动的 流中必须是唯一的。流名称与分类账名称具有相同的命名约束,如在《Amazon QLDB 开发人员指南》的 Amazon QLDB 中的配额中所定义。

类型:字符串

长度限制:长度下限为 1。最大长度为 32。

模式:(?!^.*--)(?!^[0-9]+$)(?!^-)(?!.*-$)^[A-Za-z0-9-]+$

必需:是

Tags

要作为标签添加到待创建的流中的键值对。标签键区分大小写。标签值区分大小写,可以为空值。

类型:字符串到字符串映射

映射条目:最低 0 项。最多 200 项。

密钥长度限制:最小长度为 1。长度上限为 128。

值长度限制:最小长度为 0。最大长度为 256。

必需:否

响应语法

HTTP/1.1 200 Content-type: application/json { "StreamId": "string" }

响应元素

如果此操作成功,则该服务将会发送回 HTTP 200 响应。

服务以 JSON 格式返回以下数据。

StreamId

QLDB 分配到每个 QLDB 日记账流的 UUID(以 Base62 编码的文本表示)。

类型:字符串

长度限制:固定长度为 22。

模式:^[A-Za-z-0-9]+$

错误

有关所有操作返回的常见错误的信息,请参阅常见错误

InvalidParameterException

请求中的一项或多项参数无效。

HTTP 状态代码:400

ResourceNotFoundException

指定的资源不存在。

HTTP 状态代码:404

ResourcePreconditionNotMetException

由于未提前满足条件,操作失败。

HTTP 状态代码:412

另请参阅

有关在特定语言的 AWS SDK 中使用此 API 的更多信息,请参阅以下内容: