EventBridge でルールを作成するときに入力トランスフォーマーを設定する - Amazon EventBridge

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

EventBridge でルールを作成するときに入力トランスフォーマーを設定する

ルール作成の一環として、EventBridge から指定したターゲットに送信するイベントの事前のマッチング処理に使用する入力トランスフォーマーを指定できます。 AWS サービスまたは API 送信先であるターゲットの入力トランスフォーマーを設定できます。

ルールの一部としてターゲットの入力トランスフォーマーを作成するには
  1. Amazon EventBridge でイベントに応答するルールの作成 に詳述しているルール作成の手順に従います。

  2. [ステップ 3 - ターゲットを選択] で、[追加設定] を展開します。

  3. [ターゲット入力を設定] で、ドロップダウンリストから [入力トランスフォーマー] を選択します。

    [入力トランスフォーマーを設定] をクリックします。

    EventBridge に [入力トランスフォーマーを設定] ダイアログボックスが表示されます。

  4. [サンプルイベント] セクションで、イベントパターンをテストする対象の [サンプルイベントタイプ] を選択します。 AWS イベント、パートナーイベントを選択するか、独自のカスタムイベントを入力できます。

    AWS events

    サポートされている  AWS のサービスから発行されたイベントを選択します。

    1. [AWS  イベント] を選択します。

    2. サンプルイベントで、目的の AWS イベントを選択します。イベントは AWS サービスごとに整理されます。

      イベントを選択すると、EventBridge にサンプルイベントが表示されます。

      例えば、[S3 オブジェクトの作成] を選択すると、EventBridge に S3 オブジェクトの作成のサンプルイベントが表示されます。

    3. (オプション) [コピー] を選択して、サンプルイベントをデバイスのクリップボードにコピーすることもできます

    Partner events

    Salesforce など、EventBridge をサポートしているサードパーティのサービスから送信されるイベントを選択します。

    1. [EventBridge パートナーイベント] を選択します。

    2. [サンプルイベント] で、目的のパートナーイベントを選択します。イベントはパートナーごとに整理されています。

      イベントを選択すると、EventBridge にサンプルイベントが表示されます。

    3. (オプション) [コピー] を選択して、サンプルイベントをデバイスのクリップボードにコピーすることもできます

    Enter your own

    自分のイベントを JSON テキストで入力します。

    1. [独自のイベントを入力] を選択します。

    2. EventBridge に、必要なイベント属性のテンプレートと共にサンプルイベントが表示されます。

    3. 必要に応じてサンプルイベントを編集および追加します。サンプルイベントは有効な JSON である必要があります。

    4. (オプション) 以下のいずれかのオプションを選択することもできます。

      • [コピー] — サンプルイベントをデバイスのクリップボードにコピーします

      • [Prettify] (整文) — 改行、タブ、スペースを追加して JSON テキストを読みやすくします。

  5. (オプション) [入力パス、テンプレート、および出力の例] セクションを展開して、以下の例を表示します。

    • JSON パスを使用してイベントデータを表す変数を定義する方法

    • これらの変数を入力トランスフォーマーテンプレートで使用する方法

    • EventBridge からターゲットに送信する結果の出力

    入力変換の詳細な例については、「入力変換の例」を参照してください。

  6. [ターゲット入力トランスフォーマー] セクションで、入力テンプレートで使用する変数を定義します。

    変数は、JSON パスを使用して元のイベントソースの値を参照します。これらの変数を入力テンプレートで参照し、EventBridge からターゲットに渡す変換済みイベントに、元のソースイベントからのデータを含めることができます。最大 100 の変数を定義できます。入力トランスフォーマーは有効な JSON である必要があります。

    例えば、この入力トランスフォーマーのサンプル AWS イベントとしてイベント S3 オブジェクトが作成されている を選択したとします。この場合、以下の変数を定義してテンプレートで使用できます。

    { "requester": "$.detail.requester", "key": "$.detail.object.key", "bucket": "$.detail.bucket.name" }

    (オプション) [コピー] を選択して、入力トランスフォーマーをデバイスのクリップボードにコピーすることもできます。

  7. [テンプレート] セクションで、EventBridge からターゲットに何を渡すかを決めるために使用するテンプレートを作成します。

    JSON、文字列、静的情報、定義した変数、予約変数を使用できます。入力変換の詳細な例については、「入力変換の例」を参照してください。

    例えば、前の例で変数を定義したとします。次に、これらの変数、予約変数、静的情報を参照する次のテンプレートを作成できます。

    { "message": "<requester> has created the object \"<key>\" in the bucket \"<bucket>\"", "RuleName": <aws.events.rule-name>, "ruleArn" : <aws.events.rule-arn>, "Transformed": "Yes" }

    (オプション) [コピー] を選択して、テンプレートをデバイスのクリップボードにコピーすることもできます。

  8. テンプレートをテストするには、[出力を生成] を選択します。

    EventBridge は入力テンプレートに基づいてサンプルイベントを処理し、生成された変換後の出力を [出力] に表示します。これは、EventBridge が元のソースイベントの代わりにターゲットに渡す情報です。

    上で説明したサンプル入力テンプレートで生成される出力は、次のようになります。

    { "message": "123456789012 has created the object "example-key" in the bucket "amzn-s3-demo-bucket"", "RuleName": rule-name, "ruleArn" : arn:aws:events:us-east-1:123456789012:rule/rule-name, "Transformed": "Yes" }

    (オプション) [コピー] を選択して、生成された出力をデバイスのクリップボードにコピーすることもできます。

  9. [確認] を選択します。

  10. Amazon EventBridge でイベントに応答するルールの作成」に詳述しているルールの作成に関する残りのステップに従います。