View a markdown version of this page

協助程式事件 - Amazon Elastic Container Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

協助程式事件

Amazon ECS 會將協助程式事件傳送至 ,以提供協助程式任務管理和部署生命週期變更的可見性。您可以使用這些事件來監控協助程式運作狀態、追蹤部署進度,以及觸發自動化工作流程。

Amazon ECS 支援下列協助程式事件類型:

若要了解如何為這些事件建立規則,請參閱 建立協助程式事件的規則

協助程式服務動作事件

Amazon ECS 會傳送詳細資訊類型為 的協助程式服務動作事件ECS Daemon Service Action。當 Amazon ECS 在容器執行個體上啟動協助程式任務時,這些事件會通知您。

協助程式_TASK_START_IMPAIRED

當 Amazon ECS 無法在容器執行個體上成功啟動協助程式任務時,會傳送DAEMON_TASK_START_IMPAIRED事件。事件包含指出失敗原因failureType的欄位:

  • TASK_FAILED_TO_RUN - 協助程式任務已建立,但無法達到RUNNING狀態。常見原因包括容器映像提取失敗、容器運作狀態檢查失敗或基本容器結束。taskArn 欄位出現在事件中。

  • TASK_CREATION_FAILED - 無法在容器執行個體上建立協助程式任務。常見原因包括執行個體上的 CPU、記憶體或其他資源不足。taskArn 欄位不存在於事件中,因為未建立任務。

範例:TASK_FAILED_TO_RUN 事件

下列事件顯示 協助程式任務已建立,但由於容器映像提取失敗而無法達到 RUNNING 狀態。

{ "version": "0", "id": "12345678-1234-1234-1234-123456789012", "detail-type": "ECS Daemon Service Action", "source": "aws.ecs", "account": "123456789012", "time": "2026-03-24T12:00:00Z", "region": "us-west-2", "resources": [ "arn:aws:ecs:us-west-2:123456789012:task/my-cluster/a1b2c3d4e5f6" ], "detail": { "eventType": "WARNING", "eventName": "DAEMON_TASK_START_IMPAIRED", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/my-cluster", "containerInstanceArn": "arn:aws:ecs:us-west-2:123456789012:container-instance/my-cluster/a1b2c3d4e5f6", "taskArn": "arn:aws:ecs:us-west-2:123456789012:task/my-cluster/a1b2c3d4e5f6", "daemonRevisionArn": "arn:aws:ecs:us-west-2:123456789012:daemon-revision/my-cluster/my-daemon/a1b2c3d4-e5f6-7890-abcd-ef1234567890", "capacityProviderName": "my-capacity-provider", "daemonArn": "arn:aws:ecs:us-west-2:123456789012:daemon/my-cluster/my-daemon", "daemonTaskDefinitionArn": "arn:aws:ecs:us-west-2:123456789012:daemon-task-definition/my-daemon-td:1", "failureType": "TASK_FAILED_TO_RUN", "createdAt": "2026-03-24T12:00:00.000Z", "reason": "Task failed to reach RUNNING status: CannotPullContainerError: pull image manifest has been retried 5 time(s)" } }

範例:TASK_CREATION_FAILED 事件

下列事件顯示由於 CPU 資源不足而無法在容器執行個體上建立的協助程式任務。taskArn 欄位不存在,因為未建立任務。

{ "version": "0", "id": "87654321-4321-4321-4321-210987654321", "detail-type": "ECS Daemon Service Action", "source": "aws.ecs", "account": "123456789012", "time": "2026-03-24T12:01:00Z", "region": "us-west-2", "resources": [], "detail": { "eventType": "WARNING", "eventName": "DAEMON_TASK_START_IMPAIRED", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/my-cluster", "containerInstanceArn": "arn:aws:ecs:us-west-2:123456789012:container-instance/my-cluster/b2c3d4e5f6a7", "daemonRevisionArn": "arn:aws:ecs:us-west-2:123456789012:daemon-revision/my-cluster/my-daemon/a1b2c3d4-e5f6-7890-abcd-ef1234567890", "capacityProviderName": "my-capacity-provider", "daemonArn": "arn:aws:ecs:us-west-2:123456789012:daemon/my-cluster/my-daemon", "daemonTaskDefinitionArn": "arn:aws:ecs:us-west-2:123456789012:daemon-task-definition/my-daemon-td:1", "failureType": "TASK_CREATION_FAILED", "createdAt": "2026-03-24T12:01:00.000Z", "reason": "RESOURCE:CPU - Unable to place daemon task on container instance: insufficient CPU" } }

協助程式部署狀態變更事件

Amazon ECS 會傳送詳細資訊類型為 的協助程式部署狀態變更事件ECS Daemon Deployment State Change。每次協助程式部署的狀態變更時,Amazon ECS 都會發出這些事件。

部署狀態變更事件類型

Amazon ECS 依下列事件類型分類部署狀態變更事件:

INFO 事件

  • DAEMON_DEPLOYMENT_PENDING - Amazon ECS 已啟動協助程式部署。

  • DAEMON_DEPLOYMENT_IN_PROGRESS - Amazon ECS 已開始部署,並積極取代協助程式任務。

  • DAEMON_DEPLOYMENT_SUCCESSFUL - Amazon ECS 已成功完成部署,所有協助程式任務皆執行正常。

  • DAEMON_DEPLOYMENT_STOPPED - Amazon ECS 已停止部署。當部署失敗或已由新的部署取代時,就會發生這種情況。

  • DAEMON_DEPLOYMENT_STOP_REQUESTED - Amazon ECS 已停止部署繼續進行,現在將開始復原。

  • DAEMON_DEPLOYMENT_ROLLBACK_IN_PROGRESS - 由於部署失敗或斷路器觸發,Amazon ECS 已啟動轉返。

  • DAEMON_DEPLOYMENT_ROLLBACK_SUCCESSFUL - Amazon ECS 已成功完成部署轉返。

錯誤事件

  • DAEMON_DEPLOYMENT_ROLLBACK_FAILED - Amazon ECS 無法完成部署轉返。

範例:部署擱置事件

下列事件顯示 Amazon ECS 已啟動的協助程式部署。

{ "version": "0", "id": "3329f79b-3dca-07f8-b1c2-5fe99f0b5e87", "detail-type": "ECS Daemon Deployment State Change", "source": "aws.ecs", "account": "111122223333", "time": "2026-03-05T15:54:41Z", "region": "us-west-2", "resources": [ "arn:aws:ecs:us-west-2:111122223333:daemon/my-cluster/my-daemon" ], "detail": { "eventType": "INFO", "eventName": "DAEMON_DEPLOYMENT_PENDING", "clusterArn": "arn:aws:ecs:us-west-2:111122223333:cluster/my-cluster", "daemonArn": "arn:aws:ecs:us-west-2:111122223333:daemon/my-cluster/my-daemon", "daemonDeploymentArn": "arn:aws:ecs:us-west-2:111122223333:daemon-deployment/my-cluster/my-daemon/0EYSiB0qap8xf0N76FsbE", "targetDaemonRevisionArn": "arn:aws:ecs:us-west-2:111122223333:daemon-revision/my-cluster/my-daemon/85707969-3732-4b6a-a37d-5cefddd7d7dd", "updatedAt": "2026-03-05T15:54:41.618059641Z" } }

建立協助程式事件的規則

您可以建立規則,以在協助程式事件發生時接收通知。如需建立規則的詳細資訊,請參閱《Amazon EventBridge 使用者指南》中的建立規則

下列範例事件模式示範如何篩選協助程式事件。

範例:比對所有協助程式服務動作事件

{ "source": ["aws.ecs"], "detail-type": ["ECS Daemon Service Action"] }

範例:符合特定失敗類型

{ "source": ["aws.ecs"], "detail-type": ["ECS Daemon Service Action"], "detail": { "eventName": ["DAEMON_TASK_START_IMPAIRED"], "failureType": ["TASK_CREATION_FAILED"] } }

範例:符合特定叢集的事件

{ "source": ["aws.ecs"], "detail-type": ["ECS Daemon Service Action"], "detail": { "eventName": ["DAEMON_TASK_START_IMPAIRED"], "clusterArn": ["arn:aws:ecs:us-west-2:123456789012:cluster/my-cluster"] } }

範例:符合所有部署狀態變更事件

{ "source": ["aws.ecs"], "detail-type": ["ECS Daemon Deployment State Change"] }