Eventos de Amazon ECS - Amazon Elastic Container Service

Eventos de Amazon ECS

Amazon ECS realiza el seguimiento del estado de cada una de las tareas y los servicios. Si el estado de una tarea o servicio cambia, se genera un evento que se envía a Amazon EventBridge. Estos eventos se clasifican como eventos de cambio de estado de tarea y eventos de acciones de servicio. Estos eventos y sus posibles causas se describen con mayor detalle en las secciones siguientes.

Amazon ECS genera y envía los siguientes tipos de eventos a EventBridge: eventos de cambio de estado de instancia de contenedor, eventos de cambio de estado de tarea, acción de servicio y eventos de cambio de estado de la implementación de servicio.

  • Cambio de estado de instancia de contenedor

  • Cambio de estado de tarea

  • Deployment state change (Cambio de estado de implementación)

  • Acción de servicio

nota

Amazon ECS podría agregar otros tipos de eventos, fuentes y detalles en el futuro. Si está deserializando mediante programación datos JSON de eventos, asegúrese de que la aplicación esté preparada para tratar propiedades desconocidas para evitar problemas si se agregan estas propiedades adicionales.

En algunos casos, se generan múltiples eventos para la misma actividad. Por ejemplo, cuando se inicia una tarea en una instancia de contenedor, se genera un evento de cambio de estado de la tarea para la nueva tarea. Se genera un evento de cambio de estado de la instancia de contenedor para dar cuenta del cambio en los recursos disponibles, como la CPU, la memoria y los puertos disponibles, en la instancia de contenedor. Del mismo modo, si una instancia de contenedor se termina, se generan eventos para la instancia de contenedor, el estado de la conexión del agente del contenedor y todas las tareas que se ejecutaban en la instancia de contenedor.

Los eventos de cambio de estado del contenedor y de cambio de estado de tarea contienen dos campos version: uno en el cuerpo principal del evento y otro en el objeto detail del evento. A continuación, se describen las diferencias entre estos dos campos:

  • El campo version en el cuerpo principal del evento se establece en 0 en todos los eventos. Para obtener más información acerca de los parámetros de EventBridge, consulte Metadatos de eventos de servicio de AWS en la Guía del usuario de Amazon EventBridge.

  • El campo version en el objeto detail describe la versión del recurso asociado. Cada vez que un recurso cambia de estado, se incrementa esta versión. Dado que los eventos se pueden enviar varias veces, este campo permite identificar eventos duplicados. Los eventos duplicados tienen la misma versión en el objeto detail. Si está replicando el estado de las tareas y las instancias de contenedor de Amazon ECS con EventBridge, puede comparar la versión de un recurso notificada por las API de Amazon ECS con la versión notificada en EventBridge para el recurso (dentro del objeto detail) para verificar que la versión de la secuencia de eventos sea actual.

Los eventos de acciones de servicio solo contienen el campo version en el cuerpo principal.

Los eventos de acciones de servicio especifican el servicio en dos campos diferentes:

  • En el caso de los eventos generados por create-service, el servicio está en el campo serviceName.

  • En el caso de los eventos generados por update-service, el servicio está en el campo service.

Si utiliza herramientas automatizadas para los eventos de servicio, debe codificar ambos campos.

Para obtener más información sobre cómo crear una regla para varios servicios y categorías de eventos, consulte Eventos de acciones de servicio de Amazon ECS.

Para obtener información adicional sobre cómo integrar Amazon ECS y EventBridge, consulte Integrating Amazon EventBridge and Amazon ECS (Integración de Amazon EventBridge y Amazon ECS).