

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

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

L'action OpenSearch (`openSearch`) écrit les données des messages MQTT dans un domaine Amazon OpenSearch Service. Vous pouvez ensuite utiliser des outils tels que OpenSearch les tableaux de bord pour interroger et visualiser les données dans OpenSearch Service.

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

Cette action réglementaire est assortie des exigences suivantes :
+ Rôle IAM qui AWS IoT peut assumer la réalisation de l'`es:ESHttpPut`opération. Pour de plus amples informations, veuillez consulter [Accorder à une AWS IoT règle l'accès dont elle a besoin](iot-create-role.md).

  Dans la AWS IoT console, vous pouvez choisir ou créer un rôle pour autoriser l'exécution AWS IoT de cette action de règle.
+ Si vous utilisez un client géré AWS KMS key pour chiffrer les données au repos dans le OpenSearch Service, le service doit être autorisé à utiliser la clé KMS au nom de l'appelant. Pour plus d'informations, consultez la section [Chiffrement des données au repos pour Amazon OpenSearch Service](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/encryption-at-rest.html) dans le manuel *Amazon OpenSearch Service Developer Guide*.

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

Lorsque vous créez une AWS IoT règle avec cette action, vous devez spécifier les informations suivantes :

`endpoint`  
Le point de terminaison de votre domaine Amazon OpenSearch Service.  
Supporte les [modèles de substitution](iot-substitution-templates.md) : API et AWS CLI uniquement

`index`  
L' OpenSearch index dans lequel vous souhaitez stocker vos données.  
Prend en charge les [modèles de substitution](iot-substitution-templates.md) : Oui

`type`  
Type de document que vous stockez.   
Pour OpenSearch les versions ultérieures à 1.0, la valeur du `type` paramètre doit être`_doc`. Pour plus d’informations, consultez la [documentation OpenSearch ](https://opensearch.org/docs/1.0/opensearch/rest-api/document-apis/index-document/#response-body-fields).
Prend en charge les [modèles de substitution](iot-substitution-templates.md) : Oui

`id`  
Identifiant unique de chaque document.  
Prend en charge les [modèles de substitution](iot-substitution-templates.md) : Oui

`roleARN`  
Rôle IAM qui permet d'accéder au domaine de OpenSearch service. Pour de plus amples informations, veuillez consulter [Exigences](#opensearch-rule-action-requirements).  
Prend en charge les [modèles de substitution](iot-substitution-templates.md) : Non

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

L'action OpenSearch (`openSearch`) ne peut pas être utilisée pour fournir des données aux clusters VPC Elasticsearch.

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

L'exemple JSON suivant définit une OpenSearch action dans une AWS IoT règle et indique comment vous pouvez spécifier les champs de cette `OpenSearch` action. Pour de plus amples informations, veuillez consulter [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"
                }
            }
        ]
    }
}
```

L'exemple JSON suivant définit une OpenSearch action avec des modèles de substitution dans une AWS IoT règle.

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

**Note**  
Le `type` champ substitué fonctionne pour OpenSearch la version 1.0. Pour toutes les versions ultérieures à 1.0, la valeur de `type` doit être`_doc`.

## Consultez aussi
<a name="opensearch-rule-action-see-also"></a>

[Qu'est-ce qu'Amazon OpenSearch Service ?](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/) dans le *Amazon OpenSearch Service Developer Guide*