Événements Amazon ECS
Amazon ECS suit l'état de chacune de vos tâches et de chacun de vos services. Si l'état d'une tâche ou d'un service change, un événement est généré et envoyé à Amazon EventBridge. Ces événements sont considérés comme des événements de changement d'état de tâche et des événements d'action de service. Ces événements et leurs causes possibles sont détaillés dans les sections suivantes.
Amazon ECS génère et envoie les types d’événements suivants à EventBridge :
-
Changement d’état d’une instance de conteneur
-
Changement d’état d’une tâche
-
Deployment state change (Changement d'état du déploiement)
-
Action de service
Note
Amazon ECS est susceptible d’ajouter d’autres types , sources et détails d’événements ultérieurement. Si vous désérialisez les données JSON d’événement dans le code, veillez à ce que votre application soit prête à gérer des propriétés inconnues, afin d’éviter des problèmes si et lorsque ces propriétés supplémentaires sont ajoutées.
Dans certains cas, plusieurs événements sont générés pour la même activité. Par exemple, lorsqu'une tâche est démarrée sur une instance de conteneur, un événement de modification de l'état de tâche est généré pour la nouvelle tâche. Un événement de changement d'état d'instance de conteneur est généré pour prendre en compte le changement dans les ressources disponibles, comme le processeur, la mémoire et les ports disponibles, dans l'instance de conteneur. De même, si une instance de conteneur est mise hors service, des événements sont générés pour l'instance de conteneur, l'état de connexion de l'agent de conteneur et chaque tâche en cours d'exécution sur l'instance de conteneur.
Les événements de changement d'état de conteneur et de changement d'état de tâche contiennent deux champs version : un dans le corps principal de l'événement et l'autre dans l'objet detail de l'événement. Les différences entre ces deux champs sont décrites ci-dessous :
-
Le champ
versiondu corps de l'événement est défini sur0pour tous les événements. Pour plus d’informations sur les paramètres EventBridge, consultez la section Métadonnées des événements de service AWS dans le Guide de l’utilisateur Amazon EventBridge. -
Le champ
versiondans l'objetdetailde l'événement décrit la version de la ressource associée. Chaque fois qu'une ressource change d'état, cette version est incrémentée. Comme les événements peuvent être envoyés plusieurs fois, ce champ vous permet d'identifier les événements en double. Les événements en double présentent la même version dans l'objetdetail. Si vous répliquez votre instance de conteneur Amazon ECS et l'état de la tâche avec EventBridge, vous pouvez comparer la version d'une ressource signalée par les API Amazon ECS avec la version signalée dans EventBridge pour la ressource (dans l'objetdetail), afin de vérifier que la version de votre flux d'événements est actuelle.
Les événements d'action de service contiennent uniquement le champ version dans le corps principal.
Les événements d’action de service spécifient le service dans deux champs différents :
-
Pour les événements générés par
create-service, le service est dans le champserviceName. -
Pour les événements générés par
update-service, le service est dans le champservice.
Si vous utilisez des outils automatisés pour les événements de service, vous devez coder les deux champs.
Pour de plus amples informations sur la création d’une règle pour les événements d’action de service, consultez la section Événements d’action d’un service Amazon ECS.
Pour plus d'informations sur la manière d'intégrer Amazon ECS et EventBridge, consultez Intégration d'Amazon EventBridge et d'Amazon ECS