Mettre à jour les modèles d'actifs et les modèles de composants - AWS IoT SiteWise

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.

Mettre à jour les modèles d'actifs et les modèles de composants

Utilisez la AWS IoT SiteWise console ou API pour mettre à jour un modèle d'actif ou un modèle de composant.

Vous ne pouvez pas modifier le type ou le type de données d'une propriété existante, ni la fenêtre d'une métrique existante. Vous ne pouvez pas non plus modifier le type du modèle d'actif en modèle de composant, ou inversement.

Important
  • Si vous supprimez une propriété d'un modèle de ressource ou d'un modèle de composant, toutes les AWS IoT SiteWise données précédentes relatives à cette propriété sont supprimées. Pour les modèles de composants, cela concerne tous les modèles d'actifs utilisant ce modèle de composant. Veillez donc particulièrement à comprendre dans quelle mesure votre modification peut s'appliquer.

  • Si vous supprimez une définition de hiérarchie d'un modèle d'actifs, AWS IoT SiteWise dissociez tous les actifs de cette hiérarchie.

Lorsque vous mettez à jour un modèle de ressource, chaque ressource basée sur ce modèle reflète toutes les modifications que vous apportez au modèle sous-jacent. Jusqu'à ce que les modifications se propagent, l'état de chaque ressource est UPDATING. Attendez que l'état des ressources passe à ACTIVE pour pouvoir interagir avec elles. Pendant ce temps, le statut du modèle de ressource mis à jour est PROPAGATING.

Lorsque vous mettez à jour un modèle de composant, chaque modèle d'actif qui intègre ce modèle de composant reflète les modifications. Jusqu'à ce que les modifications du modèle de composant se propagent, chaque modèle d'actif concerné possède l'UPDATINGétat, suivi PROPAGATING de la mise à jour de ses actifs associés, comme décrit dans le paragraphe précédent. Vous devez attendre que ces modèles d'actifs reviennent à leur ACTIVE état normal avant d'interagir avec eux. Pendant ce temps, le statut du modèle de composant mis à jour seraPROPAGATING.

Pour de plus amples informations, veuillez consulter État des ressources et des modèles.

Mettre à jour un modèle d'actif ou de composant (console)

Vous pouvez utiliser la AWS IoT SiteWise console pour mettre à jour un modèle de ressource ou un modèle de composant.

Pour mettre à jour un modèle d'actif ou un modèle de composant (console)
  1. Accédez à la console AWS IoT SiteWise.

  2. Dans le panneau de navigation, choisissez Models (Modèles).

  3. Choisissez le modèle d'actif ou le modèle de composant à mettre à jour.

  4. Choisissez Modifier.

  5. Sur la page Modifier le modèle, effectuez l'une des opérations suivantes :

  6. Choisissez Save (Enregistrer).

Note

Les demandes de mise à jour effectuées dans la console sont rejetées si un autre utilisateur met à jour le modèle de ressource avec succès depuis que vous avez ouvert la page Modifier le modèle pour la dernière fois. La console invite l'utilisateur à actualiser la page Modifier le modèle pour récupérer le modèle mis à jour. Vous devez effectuer à nouveau vos mises à jour, puis réessayer de sauvegarder. Pour plus d’informations, consultez Verrouillage optimiste pour les écrits sur le modèle d'actifs.

Mettre à jour un modèle d'actif ou de composant (AWS CLI)

Utilisez le AWS Command Line Interface (AWS CLI) pour mettre à jour un modèle d'actif ou un modèle de composant.

Utilisez le UpdateAssetModelAPIpour mettre à jour le nom, la description et les propriétés d'un modèle d'actif ou d'un modèle de composant. Pour les modèles d'actifs uniquement, vous pouvez mettre à jour les hiérarchies. Spécifiez les paramètres suivants :

  • assetModelId— L'ID de l'actif. Il s'agit de l'identifiant réel au UUID format, ou du externalId:myExternalId s'il en a un. Pour plus d’informations, consultez Objets de référence avec interface externe IDs dans le Guide de l’utilisateur AWS IoT SiteWise .

Spécifiez le modèle mis à jour dans la charge utile. Pour en savoir plus sur le format attendu d'un modèle d'actif ou d'un modèle de composant, voirCréation de modèles d'actifs.

Avertissement

Le modèle UpdateAssetModelAPIexistant est remplacé par le modèle que vous fournissez dans la charge utile. Pour éviter de supprimer les propriétés ou les hiérarchies de votre modèle, vous devez inclure leurs définitions IDs et leurs propriétés dans la charge utile du modèle mise à jour. Pour savoir comment interroger la structure existante de votre modèle, consultez l'DescribeAssetModelopération.

Note

La procédure suivante ne permet de mettre à jour que les modèles composites de typeAWS/ALARM. Si vous souhaitez mettre à jour des modèles CUSTOM composites, utilisez UpdateAssetModelCompositeModelplutôt. Pour de plus amples informations, veuillez consulter Mettre à jour des modèles composites personnalisés (composants).

Pour mettre à jour un modèle d'actif ou un modèle de composant (AWS CLI)
  1. Exécutez la commande suivante pour récupérer la définition du modèle existant. Remplacez asset-model-id avec l'ID ou l'ID externe du modèle d'actif ou du modèle de composant à mettre à jour.

    aws iotsitewise describe-asset-model --asset-model-id asset-model-id

    La commande ci-dessus renvoie la définition du modèle correspondant à la dernière version du modèle.

    Dans le cas d'utilisation où un modèle d'actif est dans un FAILED état, récupérez la définition de modèle valide correspondant à sa version active pour créer votre demande de mise à jour. Consultez Versions du modèle d'actifs pour plus de détails. Exécutez la commande suivante pour récupérer la définition du modèle actif :

    aws iotsitewise describe-asset-model --asset-model-id asset-model-id --asset-model-version ACTIVE

    L'opération renvoie une réponse contenant les détails du modèle. La réponse présente la structure suivante.

    { "assetModelId": "String", "assetModelArn": "String", "assetModelName": "String", "assetModelDescription": "String", "assetModelProperties": Array of AssetModelProperty, "assetModelHierarchies": Array of AssetModelHierarchyDefinition, "assetModelCompositeModels": Array of AssetModelCompositeModel, "assetModelCompositeModelSummaries": Array of AssetModelCompositeModelSummary, "assetModelCreationDate": "String", "assetModelLastUpdateDate": "String", "assetModelStatus": { "state": "String", "error": { "code": "String", "message": "String" }, "assetModelType": "String" }, "assetModelVersion": "String", "eTag": "String" }

    Pour plus d'informations, consultez l'DescribeAssetModelopération.

  2. Créez un fichier appelé update-asset-model.json et copiez la réponse de la commande précédente dans le fichier.

  3. Supprimez les paires clé-valeur suivantes de l'JSONobjet dans : update-asset-model.json

    • assetModelId

    • assetModelArn

    • assetModelCompositeModelSummaries

    • assetModelCreationDate

    • assetModelLastUpdateDate

    • assetModelStatus

    • assetModelType

    • assetModelVersion

    • eTag

    L'UpdateAssetModelopération attend une charge utile dont la structure est la suivante :

    { "assetModelName": "String", "assetModelDescription": "String", "assetModelProperties": Array of AssetModelProperty, "assetModelHierarchies": Array of AssetModelHierarchyDefinition, "assetModelCompositeModels": Array of AssetModelCompositeModel }
  4. Dans update-asset-model.json, effectuez l’une des actions suivantes :

    • Modifiez le nom du modèle de ressource (assetModelName).

    • Modifiez, ajoutez ou supprimez la description du modèle de ressource (assetModelDescription).

    • Modifiez, ajoutez ou supprimez les propriétés du modèle de ressource (assetModelProperties). Vous ne pouvez pas modifier le dataType des propriétés existantes ou le window des métriques existantes. Pour de plus amples informations, veuillez consulter Définir les propriétés des données.

    • Modifiez, ajoutez ou supprimez les hiérarchies du modèle de ressource (assetModelHierarchies). Vous ne pouvez pas modifier le childAssetModelId des hiérarchies existantes. Pour de plus amples informations, veuillez consulter Définir les hiérarchies des modèles d'actifs.

    • Modifiez, ajoutez ou supprimez l'un des modèles composites de type AWS/ALARM (assetModelCompositeModels) du modèle d'actifs. Les alarmes surveillent d'autres propriétés afin que vous puissiez identifier les équipements ou les processus nécessitant une attention particulière. Chaque définition d'alarme est un modèle composite qui normalise l'ensemble de propriétés utilisées par l'alarme. Pour plus d’informations, consultez Surveillez les données avec des alarmes et Définissez des alarmes sur les modèles d'actifs.

  5. Exécutez la commande suivante pour mettre à jour le modèle de ressource avec la définition stockée dans update-asset-model.json. Remplacez asset-model-id avec l'ID du modèle d'actif :

    aws iotsitewise update-asset-model \ --asset-model-id asset-model-id \ --cli-input-json file://model-payload.json
Important

Lorsque plusieurs utilisateurs mettent à jour un modèle d'actif en même temps, les modifications apportées par un utilisateur peuvent être annulées par inadvertance par un autre utilisateur. Pour éviter cela, vous devez définir une demande de mise à jour conditionnelle. Consultez Verrouillage optimiste pour les écrits sur le modèle d'actifs.