

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# OpenSearch
<a name="opensearch-rule-action"></a>

La acción OpenSearch (`openSearch`) escribe los datos de los mensajes MQTT en un dominio de Amazon OpenSearch Service. A continuación, puede utilizar herramientas como los OpenSearch paneles de control para consultar y visualizar los datos en OpenSearch Service.

## Requisitos
<a name="opensearch-rule-action-requirements"></a>

Esta regla tiene los siguientes requisitos:
+ Una función de IAM que AWS IoT puede asumir para realizar la `es:ESHttpPut` operación. Para obtener más información, consulte [Otorgar a una AWS IoT regla el acceso que requiere](iot-create-role.md).

  En la AWS IoT consola, puede elegir o crear un rol que permita AWS IoT realizar esta acción de regla.
+ Si utilizas un servicio gestionado por un cliente AWS KMS key para cifrar los datos en reposo, el OpenSearch servicio debe tener permiso para utilizar la clave KMS en nombre de la persona que llama. Para obtener más información, consulta [Cifrado de datos en reposo para Amazon OpenSearch Service](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/encryption-at-rest.html) en la *Guía para desarrolladores de Amazon OpenSearch Service*.

## Parameters
<a name="opensearch-rule-action-parameters"></a>

Al crear una AWS IoT regla con esta acción, debe especificar la siguiente información:

`endpoint`  
El punto final de tu dominio OpenSearch de Amazon Service.  
Admite [plantillas de sustitución](iot-substitution-templates.md): API y AWS CLI únicamente

`index`  
El OpenSearch índice en el que desea almacenar sus datos.  
Admite [plantillas de sustitución](iot-substitution-templates.md): Sí

`type`  
Tipo de documento que está almacenando.   
Para OpenSearch las versiones posteriores a la 1.0, el valor del `type` parámetro debe ser`_doc`. Para obtener más información, consulte la [Documentación de OpenSearch ](https://opensearch.org/docs/1.0/opensearch/rest-api/document-apis/index-document/#response-body-fields).
Admite [plantillas de sustitución](iot-substitution-templates.md): Sí

`id`  
Identificador único de cada documento.  
Admite [plantillas de sustitución](iot-substitution-templates.md): Sí

`roleARN`  
La función de IAM que permite el acceso al dominio del OpenSearch servicio. Para obtener más información, consulte [Requisitos](#opensearch-rule-action-requirements).  
Admite [plantillas de sustitución](iot-substitution-templates.md): No

## Limitaciones
<a name="opensearch-rule-action-limitations"></a>

La acción OpenSearch (`openSearch`) no se puede usar para entregar datos a los clústeres de Elasticsearch de VPC.

## Ejemplos
<a name="opensearch-rule-action-examples"></a>

El siguiente ejemplo de JSON define una OpenSearch acción en una AWS IoT regla y cómo se pueden especificar los campos de la acción. `OpenSearch` Para obtener más información, consulte [OpenSearchAction](https://docs.aws.amazon.com/iot/latest/apireference/API_OpenSearchAction.html).

```
{
    "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"
                }
            }
        ]
    }
}
```

El siguiente ejemplo de JSON define una OpenSearch acción con plantillas de sustitución en una AWS IoT regla.

```
{
    "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"
                }
            }
        ]
    }
}
```

**nota**  
El `type` campo sustituido funciona en la OpenSearch versión 1.0. Para cualquier versión posterior a la 1.0, el valor de `type` debe ser `_doc`.

## Véase también
<a name="opensearch-rule-action-see-also"></a>

[¿Qué es Amazon OpenSearch Service?](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/) en la *Guía para desarrolladores OpenSearch de Amazon Service*