當您呼叫會變更資源的 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 的遷移詳細資料,請按一下「Automatically migrate an instance」(自動遷移執行個體) 作業。
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"
}