

# Eventos do Amazon ECS
<a name="ecs_cwe_events"></a>

O Amazon ECS rastreia o estado de cada tarefa e serviço. Se o estado de uma tarefa ou serviço for alterado, um evento será gerado e enviado ao Amazon EventBridge. Esses eventos são classificados como eventos de alteração de estado de tarefas e eventos de ação de serviços. Esses eventos e as causas possíveis serão descritos com mais detalhes nas seções a seguir.

O Amazon ECS gera e envia os seguintes tipos de eventos ao EventBridge: 
+ Alteração do estado da instância de contêiner
+ Alteração do estado da tarefa
+ Alteração no estado de implantação
+ Ação do atendimento

**nota**  
O Amazon ECS pode adicionar outros tipos de evento, origens e detalhes no futuro. Se você estiver desserializando dados JSON de eventos no código, certifique-se de a aplicação esteja preparada para processar propriedades desconhecidas para evitar problemas se, e quando, essas propriedades adicionais forem adicionadas.

Em alguns casos, vários eventos são gerados para a mesma atividade. Por exemplo, quando uma tarefa é iniciada em uma instância de contêiner, um evento de alteração do estado da tarefa é gerado para a nova tarefa. Um evento de alteração de estado da instância de contêiner é gerado para compensar a alteração nos recursos disponíveis, como CPU, memória, portas disponíveis, na instância de contêiner. Da mesma forma, caso uma instância de contêiner seja terminada, os eventos são gerados para a instância de contêiner, o status da conexão do agente de contêiner e cada tarefa que estava em execução na instância de contêiner.

Os eventos de alteração de estado de contêiner e os eventos de alteração de estado de tarefas contêm dois campos `version`; um no corpo principal do evento e um no objeto `detail` do evento. Veja a seguir uma descrição das diferenças entre esses dois campos.
+ O campo `version` no corpo principal do evento é definido como `0` em todos os eventos. Para obter mais informações sobre parâmetros do EventBridge, consulte [metadados de eventos de serviços da AWS](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events-structure.html) no *Guia do usuário do Amazon EventBridge*.
+ O campo `version` no objeto `detail` do evento descreve a versão do recurso associado. Sempre que um recurso muda de estado, essa versão é incrementada. Como os eventos podem ser enviados várias vezes, esse campo permite identificar eventos duplicados. Eventos duplicados têm a mesma versão no objeto `detail`. Caso esteja replicando o estado da tarefa e da instância de contêiner do Amazon ECS com o Eventbridge, você poderá comparar a versão de um recurso relatado pelas APIs do Amazon ECS com a versão relatada no Eventbridge para o recurso (dentro do objeto `detail`) para verificar se a versão no fluxo de eventos é atual.

Os eventos de ação de serviços contêm apenas o campo `version` no corpo principal.

Eventos de ação de serviços especificam o serviço em dois campos diferentes:
+ Em caso de eventos gerados por `create-service`, o serviço está no campo `serviceName`.
+ Em caso de eventos gerados por `update-service`, o serviço está no campo `service`.

Se você utiliza ferramentas automatizadas para eventos de serviços, é necessário codificar para ambos os campos.

Para obter informações sobre como criar uma regra para os eventos de ação de um serviço, consulte [Eventos de ação do serviço do Amazon ECS](ecs_service_events.md).

Para obter outras informações sobre como integrar o Amazon ECS e o EventBridge, consulte [Integrating Amazon EventBridge and Amazon ECS](https://aws.amazon.com/blogs/compute/integrating-amazon-eventbridge-and-amazon-ecs/) (Como integrar o Amazon EventBridge e o Amazon ECS).