呼叫會變更資源的 Compute Engine API 時,Compute Engine 會在作業清單中新增項目。舉例來說,當您更新 VM (會變動或修改資料),或是發生會改變 VM 狀態的主機事件時,系統就會建立作業。本頁說明如何使用 Google Cloud 控制台、Google Cloud CLI 或 REST 查看 Compute Engine 作業清單。
請注意,作業可能需要一段時間才能完成,因此查看時可能會發現作業尚未完成。如要查看未完成作業的最終狀態,建議您等待作業完成,而非重複查看作業。
事前準備
-
如果尚未設定驗證,請先完成設定。
驗證可確認您的身分,以便存取 Google Cloud 服務和 API。如要從本機開發環境執行程式碼或範例,請選取下列其中一個選項,向 Compute Engine 進行驗證:
選取這個頁面上範例的預計用途分頁:
控制台
使用 Google Cloud 控制台存取 Google Cloud 服務和 API 時,不需要設定驗證。
gcloud
-
安裝 Google Cloud CLI。 完成後,執行下列指令來初始化 Google Cloud CLI:
gcloud init如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
-
- 設定預設區域和可用區。
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。
安裝 Google Cloud CLI。
如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
詳情請參閱 Google Cloud 驗證說明文件中的「使用 REST 進行驗證」。
作業保留期限
查詢作業時,請注意,已完成的作業會在一段時間後自動從資料庫中移除。
Compute Engine 會保留已完成的作業,保留期限至少 1 小時,最多 14 天。雖然專案通常會觀察到已完成作業的保留期限超過最短的 1 小時,但建議不要依據額外的保留期限。
請注意,保留期限不適用於使用者透過 Operations.delete 方法刪除的作業。
查看作業
如要查看專案的作業清單,請按照下列步驟操作:
控制台
前往 Google Cloud 控制台的「Operations」頁面。
如要進一步瞭解某項作業,請按一下作業摘要。舉例來說,如要查看
my-instanceVM 的遷移詳細資料,請按一下「自動遷移執行個體」作業。
gcloud
如要使用 gcloud compute 查看專案的作業清單,請使用 operations list 子指令。
如要查看指定區域中的作業清單,請新增 --filter 旗標。
gcloud compute operations list --filter="zone:(ZONE)"
將 ZONE 替換為要查看作業清單的可用區。舉例來說,如要查看 us-cental1-c 中的作業清單,請執行下列指令:
gcloud compute operations list --filter="zone:(us-central1-c)"
輸出內容大致如下:
NAME TYPE TARGET HTTP_STATUS STATUS TIMESTAMP
systemevent-1543845145000... compute.instances.migrateOnHostMaintenance us-central1-c/instances/my-instance 200 DONE 2018-12-03T05:52:25.000-08:00
REST
作業的 API 要求必須在全域、區域或可用區層級指定。即時遷移、VM 停止和自動重新啟動都是可用區層級的作業。
如果是區域作業,請向 zoneOperations.list 方法發出 GET 要求。
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/operations
更改下列內容:
PROJECT_ID:這項要求的專案 IDZONE:這項要求的可用區
將要求主體保留空白。
以下是區域作業要求的輸出範例。在此輸出中,會顯示主機遷移的詳細資料。
{
"kind": "compute#operation",
"id": "3216798767364213712",
"name": "systemevent-1543845145000-57c1e7574b840-a195b637-5ff74d9b",
"zone": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-c",
"operationType": "compute.instances.migrateOnHostMaintenance",
"targetLink": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-c/instances/my-instance",
"targetId": "3070988523247098025",
"status": "DONE",
"statusMessage": "Instance migrated during Compute Engine maintenance.",
"user": "system",
"progress": 100,
"insertTime": "2018-12-03T05:52:25.000-08:00",
"startTime": "2018-12-03T05:52:25.000-08:00",
"endTime": "2018-12-03T05:52:25.000-08:00",
"selfLink": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-c/operations/systemevent-1543845145000-57c1e7574b840-a195b637-5ff74d9b"
}