本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 管理資源操作請求 AWS Cloud Control API
由於資源操作是非同步的,因此資源請求,例如 create-resource
和 會update-resource
傳回包含資源建立或更新請求目前狀態相關資訊的ProgressEvent
物件。
例如,資源建立請求一開始可能會傳回下列ProgressEvent
物件。
{ "ProgressEvent": { "EventTime": "2021-08-09T18:17:15.219Z", "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "IN_PROGRESS", "Operation": "CREATE", "Identifier": "LogGroupResourceExample", "RequestToken": "5f40c577-3534-4b20-9599-0b0123456789" } }
ProgressEvent
物件中傳回的資訊包含請求權杖,然後您可以使用它來追蹤或取消資源操作請求。
注意
資源操作請求會在七天後過期。
列出作用中資源操作請求
使用 list-resource-requests
命令來傳回 AWS 帳戶 和 的作用中資源操作請求清單 AWS 區域。您可以依請求類型和狀態篩選清單。
資源操作請求會在七天後過期。
下列範例會傳回作用中資源操作請求,但會篩選掉任何仍在進行的資源建立請求。
$
aws cloudcontrol list-resource-requests --resource-request-status-filter \ Operations=CREATE,OperationStatuses=IN_PROGRESS
每個資源操作傳回的資訊包括請求權杖,然後您可以使用它來追蹤或取消資源操作請求。
{ "ResourceRequestStatusSummaries": [ { "EventTime": "2021-08-09T18:17:16.591Z", "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "SUCCESS", "Operation": "CREATE", "Identifier": "LogGroupResourceExample", "RequestToken": "5f40c577-3534-4b20-9599-0b0123456789" } ] }
追蹤資源操作請求的進度
使用 get-resource-request-status
命令來追蹤資源操作請求的進度。此命令會取得初始資源操作請求期間產生的ProgressEvent
物件中包含的請求權杖。(您也可以使用 list-resource-requests
命令擷取資源操作請求的請求權杖。) get-resource-request-status
命令會傳回更新的ProgressEvent
物件,其中包含請求目前狀態的相關資訊。
請參閱以下範例。
$
aws cloudcontrol get-resource-request-status \ --request-token 5f40c577-3534-4b20-9599-0b0123456789
取消資源操作請求
使用 cancel-resource-request
命令取消目前正在處理的資源操作請求。由於您一次只能對指定資源執行單一操作,因此在某些情況下,您可能需要取消目前的資源操作,才能使資源可用,以便對它執行另一個操作。
取消資源請求並不保證 Cloud Control API可以立即取消所有資源操作。相反地,Cloud Control API將停止對資源事件處理常式進行進一步呼叫。對 Cloud Control 的單一資源操作請求實際上API可能包含對佈建資源的基礎服務進行多次呼叫。因此,取消資源操作請求可能會讓請求部分完成,導致只有部分請求的變更會套用至資源。Cloud Control API不會將資源復原至其先前的狀態。
只能IN_PROGRESS
取消狀態為 PENDING
或 的資源操作請求。
注意
雖然呼叫CancelResourceRequest
會取消 Cloud Control 執行的操作API,但不會終止可能已在下游服務上啟動的任何非同步操作。