OpenSearch - AWS IoT Core

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

OpenSearch

OpenSearch (openSearch) 操作将来自 MQTT 消息的数据写入亚马逊 OpenSearch 服务域。然后,您可以使用 OpenSearch 仪表板等工具在 Ser OpenSearch vice 中查询和可视化数据。

要求

此规则操作具有以下要求:

参数

使用此操作创建 AWS IoT 规则时,必须指定以下信息:

endpoint

您的亚马逊 OpenSearch 服务域的终端节点。

仅支持替换模板:API 且 AWS CLI 仅支持

index

您要存储数据的 OpenSearch 索引。

支持替换模板:是

type

您存储的文档类型。

注意

对于高于 1.0 的 OpenSearch 版本,type参数的值必须为_doc。有关更多信息,请参阅OpenSearch 文档

支持替换模板:是

id

每个文档的唯一标识符。

支持替换模板:是

roleARN

允许访问 OpenSearch 服务域的 IAM 角色。有关更多信息,请参阅要求

支持替换模板:否

限制

OpenSearch (openSearch) 操作不能用于向 VPC Elasticsearch 集群传输数据。

示例

以下 JSON 示例定义了 AWS IoT 规则中的 OpenSearch 操作以及如何为该OpenSearch操作指定字段。有关更多信息,请参阅OpenSearchAction

{ "topicRulePayload": { "sql": "SELECT *, timestamp() as timestamp FROM 'iot/test'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "openSearch": { "endpoint": "https://my-endpoint", "index": "my-index", "type": "_doc", "id": "${newuuid()}", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_os" } } ] } }

以下 JSON 示例定义了一个在 AWS IoT 规则中使用替换模板的 OpenSearch 操作。

{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "openSearch": { "endpoint": "https://my-endpoint", "index": "${topic()}", "type": "${type}", "id": "${newuuid()}", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_os" } } ] } }
注意

替换的type字段适用于 OpenSearch 版本 1.0。对于任何高于 1.0 的版本,的值type必须为_doc

另请参阅

什么是亚马逊 OpenSearch 服务? 在《亚马逊 OpenSearch 服务开发者指南》