Gestion des événements App Runner dans EventBridge - AWS App Runner

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Gestion des événements App Runner dans EventBridge

À l'aide d'Amazon EventBridge, vous pouvez configurer des règles basées sur les événements qui surveillent un flux de données en temps réel provenant de votre AWS App Runner service afin de détecter certains modèles. Lorsqu'un modèle correspond à une règle, EventBridge lance une action dans une cible telle qu' AWS Lambda Amazon ECS et Amazon SNS. AWS Batch Par exemple, vous pouvez définir une règle pour l'envoi de notifications par e-mail en signalant un sujet Amazon SNS chaque fois qu'un déploiement de votre service échoue. Vous pouvez également définir une fonction Lambda pour avertir une chaîne Slack en cas d'échec d'une mise à jour du service. Pour plus d'informations EventBridge, consultez le guide de EventBridge l'utilisateur Amazon.

App Runner envoie les types d'événements suivants à EventBridge

  • Modification de l'état du service : modification du statut d'un service App Runner. Par exemple, l'état d'un service est devenuDELETE_FAILED.

  • Modification de l'état du fonctionnement du service : modification de l'état d'une longue opération asynchrone sur un service App Runner. Par exemple, un service a commencé à être créé, une mise à jour de service s'est terminée avec succès ou un déploiement de service s'est terminé avec des erreurs.

Création d'une EventBridge règle pour agir sur les événements App Runner

Un EventBridge événement est un objet qui définit certains EventBridge champs standard, tels que le AWS service source et le type de détail (événement), ainsi qu'un ensemble de champs spécifiques à l'événement contenant les détails de l'événement. Pour créer une EventBridge règle, vous utilisez la EventBridge console pour définir un modèle d'événements (quels événements doivent être suivis) et spécifier une action cible (ce qui doit être fait lors d'un match). Un modèle d'événement est similaire aux événements auxquels il correspond. Vous spécifiez un sous-ensemble de champs à associer, et pour chaque champ, vous spécifiez une liste de valeurs possibles. Cette rubrique fournit des exemples d'événements et de modèles d'événements App Runner.

Pour plus d'informations sur la création de EventBridge règles, consultez la section Création d'une règle pour un AWS service dans le guide de EventBridge l'utilisateur Amazon.

Note

Certains services prennent en charge des modèles prédéfinis dans. EventBridge Cela simplifie la création d'un modèle d'événement. Vous sélectionnez les valeurs des champs dans un formulaire et vous EventBridge générez le modèle pour vous. Pour le moment, App Runner ne prend pas en charge les modèles prédéfinis. Vous devez saisir le modèle sous forme d'objet JSON. Vous pouvez utiliser les exemples présentés dans cette rubrique comme point de départ.

Exemples d'événements App Runner

Voici quelques exemples d'événements auxquels App Runner envoie des messages EventBridge.

  • Un événement de modification de l'état du service. Plus précisément, un service qui est passé du RUNNING statut OPERATION_IN_PROGRESS au statut.

    { "version": "0", "id": "6a7e8feb-b491-4cf7-a9f1-bf3703467718", "detail-type": "AppRunner Service Status Change", "source": "aws.apprunner", "account": "111122223333", "time": "2021-04-29T11:54:23Z", "region": "us-east-2", "resources": [ "arn:aws:apprunner:us-east-2:123456789012:service/my-app/8fe1e10304f84fd2b0df550fe98a71fa" ], "detail": { "previousServiceStatus": "OPERATION_IN_PROGRESS", "currentServiceStatus": "RUNNING", "serviceName": "my-app", "serviceId": "8fe1e10304f84fd2b0df550fe98a71fa", "message": "Service status is set to RUNNING.", "severity": "INFO" } }
  • Un événement de modification du statut de l'opération. Plus précisément, une UpdateService opération qui s'est terminée avec succès.

    { "version": "0", "id": "6a7e8feb-b491-4cf7-a9f1-bf3703467718", "detail-type": "AppRunner Service Operation Status Change", "source": "aws.apprunner", "account": "111122223333", "time": "2021-04-29T18:43:48Z", "region": "us-east-2", "resources": [ "arn:aws:apprunner:us-east-2:123456789012:service/my-app/8fe1e10304f84fd2b0df550fe98a71fa" ], "detail": { "operationStatus": "UpdateServiceCompletedSuccessfully", "serviceName": "my-app", "serviceId": "8fe1e10304f84fd2b0df550fe98a71fa", "message": "Service update completed successfully. New application and configuration is deployed.", "severity": "INFO" } }

Exemples de modèles d'événements App Runner

Les exemples suivants illustrent les modèles d'événements que vous pouvez utiliser dans EventBridge les règles pour correspondre à un ou plusieurs événements App Runner. Un modèle d'événement est similaire à un événement. N'incluez que les champs auxquels vous souhaitez faire correspondre et fournissez une liste au lieu d'un scalaire pour chacun d'entre eux.

  • Faites correspondre tous les événements de changement de statut de service pour les services d'un compte spécifique, lorsque le service n'est plus en RUNNING statut.

    { "detail-type": [ "AppRunner Service Status Change" ], "source": [ "aws.apprunner" ], "account": [ "111122223333" ], "detail": { "previousServiceStatus": [ "RUNNING" ] } }
  • Faites correspondre tous les événements de changement de statut d'opération pour les services d'un compte spécifique, lorsque l'opération a échoué.

    { "detail-type": [ "AppRunner Service Operation Status Change" ], "source": [ "aws.apprunner" ], "account": [ "111122223333" ], "detail": { "operationStatus": [ "CreateServiceFailed", "DeleteServiceFailed", "UpdateServiceFailed", "DeploymentFailed", "PauseServiceFailed", "ResumeServiceFailed" ] } }

Référence des événements App Runner

Modification de l'état du service

Un événement de modification de l'état du service est detail-type défini surAppRunner Service Status Change. Il comporte les champs de détail et les valeurs suivants :

"serviceId": "your service ID", "serviceName": "your service name", "message": "Service status is set to CurrentStatus.", "previousServiceStatus": "any valid service status", "currentServiceStatus": "any valid service status", "severity": "varies"

Modification du statut de l'opération

Un événement de modification du statut de l'opération est detail-type défini surAppRunner Service Operation Status Change. Il comporte les champs de détail et les valeurs suivants :

"operationStatus": "see following table", "serviceName": "your service name", "serviceId": "your service ID", "message": "see following table", "severity": "varies"

Le tableau suivant répertorie tous les codes d'état possibles et les messages associés.

Statut Message

CreateServiceStarted

La création du service a commencé.

CreateServiceCompletedSuccessfully

La création du service s'est terminée avec succès.

CreateServiceFailed

La création du service a échoué. Pour plus de détails, consultez les journaux de service.

DeleteServiceStarted

La suppression du service a commencé.

DeleteServiceCompletedSuccessfully

La suppression du service s'est terminée avec succès.

DeleteServiceFailed

La suppression du service a échoué.

UpdateServiceStarted

UpdateServiceCompletedSuccessfully

La mise à jour du service s'est terminée correctement. Une nouvelle application et une nouvelle configuration sont déployées.

La mise à jour du service s'est terminée correctement. La nouvelle configuration est déployée.

UpdateServiceFailed

La mise à jour du service a échoué. Pour plus de détails, consultez les journaux de service.

DeploymentStarted

Le déploiement a commencé.

DeploymentCompletedSuccessfully

Le déploiement s'est terminé avec succès.

DeploymentFailed

Le déploiement a échoué. Pour plus de détails, consultez les journaux de service.

PauseServiceStarted

La pause de service a commencé.

PauseServiceCompletedSuccessfully

La pause du service s'est terminée avec succès.

PauseServiceFailed

La pause du service a échoué.

ResumeServiceStarted

La reprise du service a commencé.

ResumeServiceCompletedSuccessfully

Reprise du service terminée avec succès.

ResumeServiceFailed

La reprise du service a échoué.