更新資產和模型 - AWS IoT SiteWise

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

更新資產和模型

您可以更新 AWS IoT SiteWise 中的資產和資產模型以修改其名稱和和定義。下列更新操作是非同步的,透過 AWS IoT SiteWise 傳播也需要一些時間。進行其他變更之前,請檢查資產或資產模型狀態。您必須先等到變更傳播,才能繼續使用更新的資產或模型。

更新資產

您可以使用 AWS IoT SiteWise 主控台或 API 來更新資產的名稱。

更新資產時,資產的狀態為UPDATING,直到變更傳播。如需詳細資訊,請參閱 資產和模型狀態

更新資產 (主控台)

您可以使用 AWS IoT SiteWise 主控台來更新資產詳細資料。

更新資產 (主控台)

  1. 導覽至 AWS IoT SiteWise 主控台

  2. 在導覽窗格中,選擇 Assets (資產)

  3. 選擇要更新的資產。

    提示

    您可以選擇箭頭圖示來展開資產階層,以尋找您的資產。

    
        AWS IoT SiteWise 「資產」頁面螢幕擷取畫面,並已反白顯示資產階層。
  4. 選擇 Edit (編輯)。

  5. 更新資產的 Name (名稱)

  6. (選擇性) 在此頁面上,更新資產的其他資訊。如需詳細資訊,請參閱下列內容:

  7. 選擇 Save (儲存)

更新資產 (CLI)

您可以使用 AWS CLI 來更新資產的名稱。

使用 UpdateAsset 操作來更新資產。指定下列參數:

  • assetId— 資產 ID。

  • assetName— 資產的新名稱。

更新資產的名稱 (CLI)

  • 執行以下命令來更新資產的名稱。將 asset-id 取代為資產的 ID,以及將 asset-name 取代為資產的新名稱。

    aws iotsitewise update-asset \ --asset-id asset-id \ --asset-name asset-name

更新資產模型

您可以使用 AWS IoT SiteWise 主控台或 API 來更新資產模型。

您無法變更現有屬性的類型或資料類型。您也無法變更現有指標的時段。

重要

如果您從資產模型中移除屬性,AWS IoT SiteWise會刪除該屬性的所有先前數據。如果您從資產模型中移除階層定義,AWS IoT SiteWise 會取消與該階層中所有資產的關聯。

更新資產模型時,以該模型為基礎的每個資產都會反映您對基礎模型所做的任何變更。在變更傳播之前,每個資產都有 UPDATING 狀態。您必須等到這些資產變回 ACTIVE 狀態,才能與它們進行互動。在這段期間,更新的資產模型的狀態將是 PROPAGATING。如需詳細資訊,請參閱 資產和模型狀態

更新資產模型 (主控台)

您可以使用 AWS IoT SiteWise 主控台來更新資產模型。

更新資產模型 (主控台)

  1. 導覽至 AWS IoT SiteWise 主控台

  2. 在導覽窗格中,選擇 Models (模型)

  3. 選擇要更新的資產模型。

  4. 選擇 Edit (編輯)。

  5. Edit model (編輯模型) 頁面上,執行以下任一項操作:

  6. 選擇 Save (儲存)。

更新資產模型 (CLI)

您可以使用 AWS CLI 來更新資產模型。

使用 UpdateAssetModel 操作來更新資產模型的名稱、描述、屬性和階層。指定下列參數:

  • assetModelId— 資產模型的 ID。

指定承載中的更新資產模型。若要了解資產模型的預期格式,請參閱 更新資產模型

警告

UpdateAssetModel 操作會使用您在承載中提供的模型覆寫現有的模型。若要避免刪除資產模型的屬性或階層,您必須將其 ID 和定義納入更新的資產模型承載中。若要了解如何查詢模型的現有結構,請參閱 DescribeAssetModel 操作。

更新資產模型 (CLI)

  1. 執行以下命令來擷取現有的資產模型定義。將 asset-model-id 取代為要更新的資產模型 ID。

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

    此操作會傳回包含資產模型詳細資料的回應。回應有以下結構。

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

    如需詳細資訊,請參閱 DescribeAssetModel 操作。

  2. 建立名為 update-asset-model.json 的文件,並將前一個命令的回應複製到檔案中。

  3. 從 JSON 物件的 update-asset-model.json 中移除以下鍵值組:

    • assetModelId

    • assetModelArn

    • assetModelCreationDate

    • assetModelLastUpdateDate

    • assetModelStatus

    UpdateAssetModel 操作預期會有具備下列結構的承載。

    { "assetModelName": "String", "assetModelDescription": "String", "assetModelProperties": Array of AssetModelProperty, "assetModelHierarchies": Array of AssetModelHierarchyDefinition, "assetModelCompositeModels": Array of AssetModelCompositeModel }
  4. update-asset-model.json 中,執行下列任何一項:

    • 變更資產模型的名稱 (assetModelName)。

    • 變更、新增或移除資產模型的描述 (assetModelDescription)。

    • 變更、新增或移除任何資產模型的屬性 (assetModelProperties)。您無法變更現有屬性的 dataType 或現有指標的 window。如需詳細資訊,請參閱 定義資料屬性

    • 變更、新增或移除任何資產模型的階層 (assetModelHierarchies)。您無法變更現有階層的 childAssetModelId。如需詳細資訊,請參閱 定義資產模型(層次)之間的關係

    • 變更、新增或移除任何資產模型的複合模型 (assetModelCompositeModels),例如警報定義。警報監控其他屬性,以便您可以識別何時需要注意設備或過程。每個警報定義都是一個複合模型,用於標準化警報使用的屬性集。如需更多詳細資訊,請參閱 使用警示監控資料定義資產模型上的警報

  5. 執行以下命令,使用儲存在 update-asset-model.json 中的定義更新資產模型。將 asset-model-id 取代為資產模型的 ID。

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