翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
EventBridge での App Runner イベントの処理
Amazon EventBridge を使用すると、特定のパターンについて AWS App Runner サービスからのリアルタイムデータのストリームをモニタリングするイベント駆動型ルールを設定できます。ルールのパターンが一致する AWS Batchと、EventBridge は Amazon ECS AWS Lambda、Amazon SNS などのターゲットでアクションを開始します。例えば、サービスへのデプロイが失敗するたびに Amazon SNS トピックにシグナルを送信することで、E メール通知を送信するためのルールを設定できます。または、サービスの更新が失敗した場合に Slack チャネルに通知するように Lambda 関数を設定できます。EventBridge の詳細については、「Amazon EventBridge ユーザーガイド」を参照してください。
App Runner が EventBridge に次のイベントタイプを送信する
-
サービスステータスの変更 – App Runner サービスのステータスの変更。例えば、サービスのステータスが に変更されました
DELETE_FAILED
。 -
サービスオペレーションステータスの変更 – App Runner サービスでの長い非同期オペレーションのステータスの変更。例えば、サービスの作成が開始された、サービスの更新が正常に完了した、サービスデプロイがエラーで完了したなどです。
App Runner イベントを処理する EventBridge ルールの作成
EventBridge イベントは、ソース AWS サービスや詳細 (イベント) タイプ、イベントの詳細を含むイベント固有のフィールドのセットなど、一部の標準 EventBridge フィールドを定義するオブジェクトです。EventBridge ルールを作成するには、EventBridge コンソールを使用してイベントパターン (追跡する必要があるイベント) を定義し、ターゲットアクション (マッチングで実行する必要があるアクション) を指定します。イベントパターンは、一致するイベントに似ています。一致するフィールドのサブセットを指定し、各フィールドに対して、可能な値のリストを指定します。このトピックでは、App Runner イベントとイベントパターンの例を示します。
EventBridge ルールの作成の詳細については、「Amazon EventBridge ユーザーガイド」の AWS 「 サービスのルールの作成」を参照してください。
注記
一部のサービスは、EventBridge で事前定義されたパターンをサポートしています。これは、イベントパターンが作成される方法を簡素化します。フォーム上のフィールド値を選択すると、EventBridge がパターンを生成します。現時点では、App Runner は事前定義されたパターンをサポートしていません。パターンを JSON オブジェクトとして入力する必要があります。このトピックの例を出発点として使用できます。
App Runner イベントの例
以下は、App Runner が EventBridge に送信するイベントの例です。
-
サービスステータス変更イベント。具体的には、 から
RUNNING
ステータスOPERATION_IN_PROGRESS
に変更されたサービスです。{ "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" } }
-
オペレーションステータス変更イベント。具体的には、正常に完了した
UpdateService
オペレーションです。{ "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" } }
App Runner イベントパターンの例
次の例は、1 つ以上の App Runner イベントを照合するために EventBridge ルールで使用できるイベントパターンを示しています。イベントパターンはイベントに似ています。一致させるフィールドのみを含め、それぞれにスカラーの代わりにリストを指定します。
-
特定のアカウントのサービスのすべてのサービスステータス変更イベントをマッチングします。サービスのステータスはなくなりました
RUNNING
。{ "detail-type": [ "AppRunner Service Status Change" ], "source": [ "aws.apprunner" ], "account": [ "111122223333" ], "detail": { "previousServiceStatus": [ "RUNNING" ] } }
-
オペレーションが失敗した特定のアカウントのサービスのオペレーションステータス変更イベントをすべて一致させます。
{ "detail-type": [ "AppRunner Service Operation Status Change" ], "source": [ "aws.apprunner" ], "account": [ "111122223333" ], "detail": { "operationStatus": [ "CreateServiceFailed", "DeleteServiceFailed", "UpdateServiceFailed", "DeploymentFailed", "PauseServiceFailed", "ResumeServiceFailed" ] } }
App Runner イベントリファレンス
サービスステータスの変更
サービスステータス変更イベントが にdetail-type
設定されていますAppRunner Service Status Change
。次の詳細フィールドと値があります。
"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
"
オペレーションステータスの変更
オペレーションステータスの変更イベントが にdetail-type
設定されていますAppRunner Service Operation Status Change
。次の詳細フィールドと値があります。
"operationStatus": "see following table
",
"serviceName": "your service name
",
"serviceId": "your service ID
",
"message": "see following table
",
"severity": "varies
"
次の表に、すべてのステータスコードと関連するメッセージを示します。
ステータス | メッセージ |
---|---|
|
サービスの作成が開始されました。 |
|
サービスの作成が正常に完了しました。 |
|
サービスの作成に失敗しました。詳細については、「 サービスログ」を参照してください。 |
|
サービスの削除が開始されました。 |
|
サービスの削除が正常に完了しました。 |
|
サービスの削除に失敗しました。 |
|
|
|
サービスの更新が正常に完了しました。新しいアプリケーションと設定がデプロイされます。 |
サービスの更新が正常に完了しました。新しい設定がデプロイされます。 |
|
|
サービスの更新に失敗しました。詳細については、「 サービスログ」を参照してください。 |
|
デプロイが開始されました。 |
|
デプロイが正常に完了しました。 |
|
デプロイに失敗しました。詳細については、「 サービスログ」を参照してください。 |
|
サービスの一時停止が開始されました。 |
|
サービスの一時停止が正常に完了しました。 |
|
サービスの一時停止に失敗しました。 |
|
サービス再開が開始されました。 |
|
サービス再開が正常に完了しました。 |
|
サービス再開に失敗しました。 |