Atualizar modelos de ativo e modelos de componente - AWS IoT SiteWise

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Atualizar modelos de ativo e modelos de componente

Use o AWS IoT SiteWise console ou a API para atualizar um modelo de ativo ou modelo de componente.

Não é possível alterar o tipo de uma propriedade existente ou o respectivo tipo de dado, ou ainda a janela de uma métrica existente. Você também não pode alterar o tipo de modelo de ativo para modelo de componente ou vice-versa.

Importante
  • Se você remover uma propriedade de um modelo de ativo ou modelo de componente, AWS IoT SiteWise excluirá todos os dados anteriores dessa propriedade. Para modelos de componente, isso afeta todos os modelos de ativo que usam esse modelo de componente, por isso tome muito cuidado e entenda até que ponto a alteração pode ser aplicada.

  • Se você remover uma definição de hierarquia de um modelo de ativo, AWS IoT SiteWise desassociará todos os ativos dessa hierarquia.

Quando você atualiza um modelo de ativo, cada ativo baseado nesse modelo reflete todas as alterações feitas no modelo subjacente. Até que as alterações se propaguem, cada ativo estará definido com o estado UPDATING. É necessário aguardar até que esses ativos retornem ao estado ACTIVE antes de interagir com eles. Durante esse período, o status do modelo de ativo atualizado será PROPAGATING.

Quando você atualiza um modelo de componente, todo modelo de ativo que incorpora esse modelo de componente reflete as alterações. Até que as alterações do modelo de componente se propaguem, cada modelo de ativo afetado tem o estado UPDATING, seguido de PROPAGATING à medida que ele atualiza os ativos associados, conforme descrito no parágrafo anterior. Aguarde até que esses modelos de ativo retornem ao estado ACTIVE para interagir com eles. Durante esse período, o status do modelo de componente atualizado será PROPAGATING.

Para obter mais informações, consulte Estados de ativos e modelos.

Atualizar um modelo de ativo ou de componente (console)

Você pode usar o AWS IoT SiteWise console para atualizar um modelo de ativo ou modelo de componente.

Como atualizar um modelo de ativo ou um modelo de componente (console)
  1. Navegue até o console do AWS IoT SiteWise.

  2. No painel de navegação, selecione Modelos.

  3. Escolha o modelo de ativo ou o modelo de componente a ser atualizado.

  4. Selecione Editar.

  5. Na página Editar modelo siga um destes procedimentos:

  6. Escolha Salvar.

nota

As solicitações de atualização feitas no console serão rejeitadas se outro usuário atualizar com êxito o modelo de ativo desde a última vez em que você abriu a página Editar modelo. O console solicita que o usuário clica em Atualizar na página Editar modelo para buscar o modelo atualizado. Você deve fazer as atualizações novamente e tentar salvar mais uma vez. Consulte Bloqueio positivo para gravações do modelo de ativo para obter mais detalhes.

Atualizar um modelo de ativo ou de componente (AWS CLI)

Use o AWS Command Line Interface (AWS CLI) para atualizar um modelo de ativo ou modelo de componente.

Use a UpdateAssetModelAPI para atualizar o nome, a descrição e as propriedades de um modelo de ativo ou modelo de componente. Somente para modelos de ativo, você pode atualizar as hierarquias. Especifique os seguintes parâmetros:

Especifique o modelo atualizado na carga útil. Para saber mais sobre o formato esperado de um modelo de ativo ou de um modelo de componente, consulte Crie modelos de ativos em AWS IoT SiteWise.

Atenção

A UpdateAssetModelAPI substitui o modelo existente pelo modelo que você fornece na carga. Para evitar a exclusão das propriedades ou hierarquias do seu modelo, você deve incluir suas definições IDs e suas na carga útil atualizada do modelo. Para saber como consultar a estrutura existente do seu modelo, consulte a DescribeAssetModeloperação.

nota

O procedimento a seguir só pode atualizar modelos compostos do tipo AWS/ALARM. Se você quiser atualizar modelos CUSTOM compostos, use UpdateAssetModelCompositeModelem vez disso. Para obter mais informações, consulte Atualizar modelos compostos personalizados (componentes).

Como atualizar um modelo de ativo ou um modelo de componente (AWS CLI)
  1. Execute o comando a seguir para recuperar a definição do modelo existente. asset-model-idSubstitua pela ID ou pela ID externa do modelo de ativo ou modelo de componente a ser atualizado.

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

    O comando acima retorna a definição do modelo correspondente à versão mais recente do modelo.

    Para um caso de uso em que um modelo de ativo está em um estado FAILED, recupere a definição de modelo válida correspondente à versão ativa para criar a solicitação de atualização. Para mais detalhes, consulte Versões do modelo de ativo. Execute o seguinte comando para recuperar a definição de modelo válida:

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

    A operação retorna uma resposta que contém os detalhes do modelo. A resposta tem a seguinte estrutura:

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

    Para obter mais informações, consulte a operação DescribeAssetModel.

  2. Crie um arquivo chamado update-asset-model.json e copie a resposta do comando anterior no arquivo.

  3. Remova os seguintes pares de chave-valor do objeto JSON em update-asset-model.json:

    • assetModelId

    • assetModelArn

    • assetModelCompositeModelSummaries

    • assetModelCreationDate

    • assetModelLastUpdateDate

    • assetModelStatus

    • assetModelType

    • assetModelVersion

    • eTag

    A UpdateAssetModeloperação espera uma carga útil com a seguinte estrutura:

    { "assetModelName": "String", "assetModelDescription": "String", "assetModelProperties": Array of AssetModelProperty, "assetModelHierarchies": Array of AssetModelHierarchyDefinition, "assetModelCompositeModels": Array of AssetModelCompositeModel }
  4. Em update-asset-model.json proceda de uma das seguintes maneiras:

    • Altere o nome do modelo de ativo (assetModelName).

    • Altere, adicione ou remova a descrição do modelo de ativo (assetModelDescription).

    • Altere, adicione ou remova qualquer uma das propriedades do modelo de ativo (assetModelProperties). Não é possível alterar o dataType de propriedades existentes ou a window das métricas existentes. Para obter mais informações, consulte Definir propriedades de dados.

    • Altere, adicione ou remova qualquer uma das hierarquias de modelos de ativo (assetModelHierarchies). Não é possível alterar o childAssetModelId das hierarquias existentes. Para obter mais informações, consulte Definir hierarquias de modelos de ativo.

    • Altere, adicione ou remova qualquer um dos modelos compostos do modelo de ativo do tipo AWS/ALARM (assetModelCompositeModels). Os alarmes monitoram outras propriedades para que você possa identificar quando equipamentos ou processos requerem atenção. Cada definição de alarme é um modelo composto que padroniza o conjunto de propriedades que o alarme usa. Para ter mais informações, consulte Monitore dados com alarmes em AWS IoT SiteWise e Defina alarmes em modelos de ativos em AWS IoT SiteWise.

  5. Execute o seguinte comando para atualizar o modelo de ativo com a definição armazenada no update-asset-model.json. asset-model-idSubstitua pelo ID do modelo de ativo:

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

Quando vários usuários atualizam um modelo de ativo ao mesmo tempo, as alterações de um usuário podem ser inadvertidamente substituídas por outro. Para evitar isso, defina uma solicitação de atualização condicional. Consulte Bloqueio positivo para gravações do modelo de ativo.