本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Cloud Control API 入門
使用此簡短教學課程來開始使用 執行資源操作 AWS 雲端控制 API。您將了解使用 Cloud Control API 建立、讀取、更新、刪除和列出資源的基本知識。
步驟 1:建立資源
在本教學課程中,請建立類型為 的資源AWS::Logs::LogGroupCloudControlExample,並將其上的保留政策設定為 90 天。
- 
                在 AWS Command Line Interface (AWS CLI) 中,使用下列參數執行 create-resource命令:- 
                        將 指定 type-name為AWS::Logs::LogGroup。
- 
                        將 指定 desired-state為包含 JSON 的字串,以設定所需的屬性:{"LogGroupName": "CloudControlExample", "RetentionInDays": 90}
 $aws cloudcontrol create-resource --type-name AWS::Logs::LogGroup \ --desired-state '{"LogGroupName": "CloudControlExample","RetentionInDays":90}'Cloud Control API 會傳回 ProgressEvent物件,其中包含資源操作請求狀態的相關資訊。{ "ProgressEvent": { "EventTime": "2024-08-26T22:07:23.347Z", "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "IN_PROGRESS", "Operation": "CREATE", "Identifier": "CloudControlExample", "RequestToken": "758f4a4e-fef4-491a-9b07-123456789012" } }
- 
                        
- 
                若要追蹤資源操作請求的狀態,請使用下列參數執行 get-resource-request-status命令:- 
                        將 request-token參數指定為ProgressEvent物件中傳回的RequestToken屬性值。
 $aws cloudcontrol get-resource-request-status --request-token758f4a4e-fef4-491a-9b07-123456789012Cloud Control API 會傳回 ProgressEvent物件,其中包含資源操作請求狀態的相關資訊。當 Cloud Control API 成功建立資源時,它會將OperationStatus值設定為SUCCESS。{ "ProgressEvent": { "EventTime": "2024-08-26T22:29:23.326Z", "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "SUCCESS", "Operation": "CREATE", "Identifier": "CloudControlExample", "RequestToken": "758f4a4e-fef4-491a-9b07-123456789012" } }
- 
                        
步驟 2:讀取 (描述) 資源
接著,讀取您剛建立的資源的目前狀態。
- 
                在 中 AWS CLI,使用下列參數執行 get-resource命令:- 
                        當您建立資源時,將 指定 identifier為ProgressEvent物件中傳回的identifier屬性值。在此情況下,它是CloudControlExample,即您為日誌群組指定的名稱。
 $aws cloudcontrol get-resource --type-name AWS::Logs::LogGroup --identifier CloudControlExampleCloud Control API 會傳回資源目前狀態的詳細資訊,包括其屬性和設定的模型。在此情況下,這包含 Amazon CloudWatch Events 在建立資源時 Arn產生的屬性 。{ "TypeName": "AWS::Logs::LogGroup", "ResourceDescription": { "Identifier": "CloudControlExample", "ResourceModel": '{"RetentionInDays": 90, "LogGroupName": "CloudControlExample", "Arn": "arn:aws:logs:us-west-2:123456789012:log-group:CloudControlExample:*"}' } }
- 
                        
步驟 3:更新資源
接著,更新您的日誌群組,將保留政策加倍為 180 天。
- 
                在 中 AWS CLI,使用下列參數執行 update-resource命令:- 
                        將 指定 type-name為AWS::Logs::LogGroup。
- 
                        當您建立資源時,將 指定 identifier為ProgressEvent物件中傳回的identifier屬性值。在此情況下,它是CloudControlExample,即您為日誌群組指定的名稱。
- 
                        將 patch-document參數指定為包含 JSON 的字串,該 JSON 代表將保留政策更新為 180 天的替代操作。[{"op": "replace", "path": "RetentionInDays", "value": 180}]如需編寫修補程式文件的詳細資訊,請參閱 編寫修補程式文件。 
 $aws cloudcontrol update-resource --type-name AWS::Logs::LogGroup \ --identifier CloudControlExample \ --patch-document '[{"op": "replace", "path": "RetentionInDays", "value":180}]'Cloud Control API 會傳回 ProgressEvent物件,其中包含資源操作請求狀態的相關資訊。{ "ProgressEvent": { "EventTime": "2024-08-26T22:29:22.547Z", "ResourceModel": '{"RetentionInDays":180,"LogGroupName":"CloudControlExample"}', "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "IN_PROGRESS", "Operation": "UPDATE", "Identifier": "CloudControlExample", "RequestToken": "2026055d-f21c-4b50-bd40-123456789012" } }
- 
                        
- 
                若要追蹤資源操作請求的狀態,請使用下列參數執行 get-resource-request-status命令:- 
                        將 request-token參數指定為ProgressEvent物件中傳回的RequestToken屬性值。
 $aws cloudcontrol get-resource-request-status --request-token2026055d-f21c-4b50-bd40-123456789012Cloud Control API 會傳回 ProgressEvent物件,其中包含資源操作請求狀態的相關資訊。當 Cloud Control API 成功更新資源時,它會將OperationStatus值設定為SUCCESS。{ "ProgressEvent": { "EventTime": "2024-08-26T22:29:23.326Z", "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "SUCCESS", "Operation": "UPDATE", "Identifier": "CloudControlExample", "RequestToken": "2026055d-f21c-4b50-bd40-123456789012" } }
- 
                        
步驟 4:列出特定類型的所有資源
接著,使用 Cloud Control API 來探索 中的資源 AWS 帳戶。
- 
                在 中 AWS CLI,使用下列參數執行 list-resources命令:- 
                        將 指定 type-name為AWS::Logs::LogGroup。
 $aws cloudcontrol list-resources --type-name AWS::Logs::LogGroupCloud Control API 會依主要識別符傳回您帳戶中 AWS::Logs::LogGroup的資源清單。這包括CloudControlExample,這是您在本教學課程中建立的資源,以及帳戶中已存在的任何其他日誌群組。此外,對於AWS::Logs::LogGroup資源, 傳回的資訊會list-resources包含每個資源的屬性。{ "TypeName": "AWS::Logs::LogGroup", "ResourceDescriptions": [ { "Identifier": "CloudControlExample", "Properties": '{"RetentionInDays":180, "LogGroupName": "CloudControlExample", "Arn":"arn:aws:logs:us-west-2:123456789012:log-group:CloudControlExample:*"}' }, { "Identifier": "AnotherLogGroupResourceExample", "Properties": '{"RetentionInDays": 90, "LogGroupName": "AnotherLogGroupResourceExample", "Arn": "arn:aws:logs:us-west-2:123456789012:log-group:AnotherLogGroupResourceExample:*"}' }, ] }
- 
                        
步驟 5:刪除資源
最後,刪除您的日誌群組以從本教學課程中清除。
- 
                在 中 AWS CLI,使用下列參數執行 delete-resource命令:- 
                        將 指定 type-name為AWS::Logs::LogGroup。
- 
                        當您建立資源時,將 指定 identifier為ProgressEvent物件中傳回的identifier屬性值。在此情況下,它是CloudControlExample
 $aws cloudcontrol delete-resource --type-name AWS::Logs::LogGroup --identifier CloudControlExampleCloud Control API 會傳回 ProgressEvent物件,其中包含資源操作請求狀態的相關資訊。{ "ProgressEvent": { "EventTime": "2024-08-26T22:50:20.037Z", "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "IN_PROGRESS", "Operation": "DELETE", "Identifier": "CloudControlExample", "RequestToken": "bb0ed9cd-84f9-44c2-b638-123456789012" } }
- 
                        
- 
                若要追蹤資源操作請求的狀態,請使用下列參數執行 get-resource-request-status命令:- 
                        將 request-token參數指定為ProgressEvent物件中傳回的RequestToken屬性值。
 $aws cloudcontrol get-resource-request-status --request-tokenbb0ed9cd-84f9-44c2-b638-123456789012Cloud Control API 會傳回 ProgressEvent物件,其中包含資源操作請求狀態的相關資訊。當 Cloud Control API 成功刪除資源時,它會將OperationStatus值設定為SUCCESS。{ "ProgressEvent": { "EventTime": "2024-08-26T22:50:20.831Z", "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "SUCCESS", "Operation": "DELETE", "Identifier": "CloudControlExample", "RequestToken": "bb0ed9cd-84f9-44c2-b638-123456789012" } }
- 
                        
後續步驟
如需搭配 資源使用 Cloud Control API 的詳細資訊和範例,請參閱 Cloud Control API 資源操作。