本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon ECS事件
Amazon 會ECS追蹤每個任務和服務的狀態。如果任務或服務的狀態變更,則會產生事件並傳送至 Amazon EventBridge。系統會將這些事件分類為任務狀態變更事件和服務動作事件。下列各節將更詳細地說明這些事件及其可能原因。
Amazon ECS產生並傳送下列類型的事件至 EventBridge:容器執行個體狀態變更事件、任務狀態變更事件、服務動作和服務部署狀態變更事件。
-
容器執行個體狀態變更
-
任務狀態變更
-
Deployment state change (部署狀態變更)
-
服務動作
注意
Amazon ECS可能會在未來新增其他事件類型、來源和詳細資訊。如果您要在程式碼中取消序列化事件JSON資料,請確定您的應用程式已準備好處理未知屬性,以避免新增這些其他屬性時發生問題。
在某些情況下,會針對相同的活動產生多個事件。例如,在容器執行個體開始任務時,即會為新的任務產生任務狀態變更事件。產生容器執行個體狀態變更事件,以考量容器執行個體上可用資源的變更,例如 、CPU記憶體和可用連接埠。同樣地,如果終止容器執行個體,則會針對容器執行個體、容器代理連線狀態以及在容器執行個體上執行的每個任務產生事件。
容器狀態變更和任務狀態變更事件包含兩個 version
欄位:一個位於事件本體,另一個位於事件的 detail
物件中。以下說明這兩個欄位之間的差異:
-
事件本體的
version
欄位在所有事件中皆設為0
。如需 EventBridge 參數的詳細資訊,請參閱 Amazon EventBridge 使用者指南 中的事件和事件模式。 -
事件之
detail
物件中的version
欄位說明相關資源的版本。每次資源變更狀態時,此版本都會遞增。因為事件可以傳送多次,所以此欄位可讓您識別重複的事件。重複事件在detail
物件中具有相同版本。如果您要使用 複寫 Amazon ECS容器執行個體和任務狀態 EventBridge,您可以將 Amazon 回報的資源版本ECSAPIs與 資源 (detail
物件內部) 中回報 EventBridge 的版本進行比較,以確認事件串流中的版本為最新版本。
服務動作事件只包含本體中的 version
欄位。
如需如何整合 Amazon ECS和 的詳細資訊 EventBridge,請參閱整合 Amazon EventBridge 和 Amazon ECS