翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
EventBridge を使用して、ルールを使用した特定のAWS Lambda関数にイベントをルーティングできます。
このチュートリアルでは、Lambda コンソールを使用して、EventBridge ルールのターゲットとして使用する関数を作成します。次に、アーカイブと EventBridge コンソールを使用して、テストイベントをアーカイブするルールを作成します。そのアーカイブにイベントがある場合は、それらを再生します。
ステップ
ステップ 1: Lambda 関数を作成する
始めに、Lambda 関数を作成してイベントのログを記録します。
Lambda 関数を作成するには
AWS Lambda コンソール (https://console.aws.amazon.com/lambda/
) を開きます。 -
[関数の作成] を選択します。
-
Author from scratch (製作者を最初から) を選択します。
-
Lambda 関数の名前と説明を入力します。例えば、関数名を
LogScheduledEvent
とします。 -
残りのオプションはデフォルトのまま、[Create function] (関数の作成) を選択します。
-
関数ページの [Code] (コード) タブで、index.js をダブルクリックします。
-
既存の JavaScript コードを以下のコードに置き換えます。
'use strict'; exports.handler = (event, context, callback) => { console.log('LogScheduledEvent'); console.log('Received event:', JSON.stringify(event, null, 2)); callback(null, 'Finished'); };
-
[デプロイ] を選択します。
ステップ 2: アーカイブの作成
次に、すべてのテストイベントを保持するアーカイブを作成します。
ステップ 5: アーカイブを作成するには
アーカイブにテストイベントが保存されると、それらを再生できます。
-
ナビゲーションペインで [Archives (アーカイブ)] を選択します。
-
[Create archive] (アーカイブの作成) を選択します。
-
アーカイブの名前と説明を入力します。たとえば、アーカイブ
ArchiveTest
に名前を付けます。 -
残りのオプションはデフォルトのまま、[Next] (次へ) を選択します。
-
[Create archive] (アーカイブの作成) を選択します。
ステップ 3: ルールを作成する
イベントバスに送信されるイベントをアーカイブするルールを作成します。
ルールを作成するには:
Amazon EventBridge コンソール (https://console.aws.amazon.com/events/
) を開きます。 -
ナビゲーションペインで ルール] を選択します。
-
ルールの作成 を選択します。
-
ルールの名前と説明を入力します。たとえば、ルール
ARTestRule
に名前を付けます。ルールには、同じリージョン内および同じイベントバス上の別のルールと同じ名前を付けることはできません。
-
[Event bus] (イベントバス) では、このルールに関連付けるイベントバスを選択します。このルールをアカウントからのイベントと一致させるには、[default] (デフォルト) を選択します。アカウントの AWS サービスがイベントを発行すると、常にアカウントのデフォルトのイベントバスに移動します。
-
[Rule type] (ルールタイプ) では、[Rule with an event pattern] (イベントパターンを持つルール) を選択します。
-
次へ を選択します。
-
[Event source] (イベントソース) では、[Other] (その他) を選択します。
-
[Event pattern] (イベントパターン) では、次のように入力します。
{ "detail-type": [ "customerCreated" ] }
-
[Next] を選択します。
-
[Target types] (ターゲットタイプ) では、AWS[services] (サービス) を選択します。
-
ターゲットの選択では、ドロップダウンリストから [Lambda function] (Lambda 関数) を選択します。
-
[Function] (関数) で、[Step 1: Create a Lambda function] (ステップ 1:Lambda 関数を作成する) セクションで作成した Lambda 関数を選択します。この例では、
LogScheduledEvent
を選択します。 -
[Next] を選択します。
-
[Next] を選択します。
-
ルールの詳細を確認し、[Create rule] (ルールの作成) を選択します。
ステップ 4: テストイベントの送信
アーカイブとルールを設定したので、アーカイブが正しく動作していることを確認するためにテストイベントを送信します。
注記
イベントがアーカイブに到達するまでに、時間がかかることがあります。
テストイベントを送信するには (コンソール)
Amazon EventBridge コンソール (https://console.aws.amazon.com/events/
) を開きます。 -
ナビゲーションペインの [Event Buses] (イベントバス) を選択します。
-
[Default event bus] (デフォルトのイベントバス) タイルで、[Actions] (アクション)、[Send events] (イベントの送信) を選択します。
-
イベントソースを入力します。例えば、
TestEvent
と指定します。 -
[Detail type] (詳細タイプ) を使用する場合、
customerCreated
と入力します。 -
[Event detail] (イベントの詳細) を使用する場合、
{}
と入力します。 -
[送信] を選択します。
ステップ 5:イベントの再生
テストイベントがアーカイブに保存されたら、それらを再生できます。
アーカイブされたイベントを再生するには (コンソール)
Amazon EventBridge コンソール (https://console.aws.amazon.com/events/
) を開きます。 -
ナビゲーションペインの [Replays (再生)] を選択します。
-
[Start new replay (新規再生を開始)] を選択します。
-
再生の名前と説明を入力します。たとえば、再生
ReplayTest
に名前を付けます。 -
[Source] (ソース) で、[Step 2: Create archive] (ステップ 2:アーカイブの作成) セクションで作成したアーカイブを選択します。
-
[Replay time frame] (再生時間フレーム) で、次の作業を行います。
-
[Start time] (開始時間) で、テストイベントを送信した日付と送信する前の時刻を選択します。例えば、
2021/08/11
と08:00:00
です。 -
[End time] (終了時間) で、現在の日付と時刻を選択します。例えば、
2021/08/11
と09:15:00
です。
-
-
[Start Replay] (再生を開始) を選択します。
ステップ 6: リソースをクリーンアップする
このチュートリアル用に作成したリソースは、保存を希望しない限り、すぐに削除できます。使用しなくなった AWS リソースを削除することで、AWS アカウントに請求される料金が発生しないようにできます。
Lambda 関数を削除するには
-
Lambda コンソールの [関数ページ]
を開きます。 -
作成した関数を選択します。
-
[Actions] (アクション) で、[Delete] (削除) を選択します。
-
[削除] を選択します。
EventBridge アーカイブを削除するには
-
Eventbridge コンソールの [Archives
] (アーカイブ) ページを開きます。 -
作成したアーカイブを選択します。
-
[削除] を選択します。
-
アーカイブ名を入力し、[Delete] (削除) を選択します。
EventBridge ルールを削除するには
-
Eventbridge コンソールの [Rules
] (ルール) ページを開きます。 -
作成したルールを選択します。
-
[削除] を選択します。
-
[Delete] (削除) を選択します。