

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

# Advanced Builder を使用したルールの作成
<a name="eb-create-rule-wizard"></a>

Amazon EventBridge が受信したイベントに対してアクションを実行するには、[ルール](eb-rules.md)を作成できます。イベントがルールで定義した[イベントパターン](eb-event-patterns.md)に一致すると、EventBridge は指定された[ターゲット](eb-targets.md)にイベントを送信し、ルールで定義されたアクションをトリガーします。

次の手順では、EventBridge で指定先のイベントバスに送信するイベントのマッチングに使用するルールの作成方法を示します。

**Topics**
+ [ルールを定義する](#eb-create-rule-define)
+ [イベントパターンを作成する](#eb-create-rule-event-pattern)
+ [ターゲットを選択する](#eb-create-rule-target)
+ [タグとレビュールールを設定する](#eb-create-rule-review)

## ルールを定義する
<a name="eb-create-rule-define"></a>

まず、ルールを識別するため、ルールの名前と説明を入力します。また、ルールがイベントパターンに一致するイベントを検索するイベントバスも定義する必要があります。

**ルールの詳細を定義するには**

1. Amazon EventBridge コンソール ([https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/)) を開きます。

1. ナビゲーションペインで **[ルール]** を選択します。

1. **[‬ルールを作成]‭** を選択します。

1. ルールビルダーの選択ページで、**高度なビルダー**を選択します。

   Advanced Builder は、ルールとターゲットに JSON パターンと設定を使用します。代わりにビジュアルキャンバスを使用するには、[「ルールの作成 (拡張ビルダー)](eb-create-rule-visual.md)」を参照してください。

1. ルールの**名前**を入力し、オプションで**説明**を入力します。

   ルールは、同じ AWS リージョン および同じイベントバスの別のルールと同じ名前にすることはできません。

1. **[Event bus]** (イベントバス) で、このルールに関連付けるイベントバスを選択します。このルールをアカウントからのイベントと一致させるには、**AWS のデフォルトのイベントバス**を選択します。 AWS のサービス アカウントの がイベントを発行すると、常にアカウントのデフォルトのイベントバスに送られます。

1. **[ルールタイプ]** で、**[イベントパターンを持つルール]** を選択してください。

1. [**次へ**] を選択します。

## イベントパターンを作成する
<a name="eb-create-rule-event-pattern"></a>

次に、イベントパターンを作成します。そのためには、イベントソースを指定し、イベントパターンのベースを選択し、照合する属性と値を定義します。また、JSON でイベントパターンを生成し、サンプルイベントに対してテストすることもできます。

**イベントパターンを作成するには**

1. **[イベントソース]** で、**[AWS イベントまたは EventBridge パートナーイベント]** を選択してください。

1. (オプション) **[サンプルイベント]** セクションで、イベントパターンを照らし合わせてテストする **[サンプルイベントタイプ]** を選択します。

   次のサンプルイベントタイプを使用できます｡
   + **AWS events **– サポートされている から出力されるイベントから選択します AWS のサービス。
   + **[EventBridge partner events]** (EventBridge パートナーイベント) — Salesforce など、EventBridge をサポートしているサードパーティのサービスから送信されるイベントから選択できます。
   + **[自分のイベントを入力]** — 自分のイベントを JSON テキストで入力します。

     独自のカスタムイベントを作成するための開始点として、 AWS または パートナーイベントを使用することもできます。

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

     1. **[サンプルイベント]** ドロップダウンを使用して、カスタムイベントの開始点として使用するイベントを選択します。

        EventBridge にサンプルイベントが表示されます。

     1. **[コピー]** を選択します。

     1. **[イベントタイプ]** で **[自分のイベントを入力]** を選択します。

     1. JSON 編集ペインのサンプルイベント構造を削除し、代わりに AWS または パートナーイベントを貼り付けます。

     1. イベント JSON を編集して独自のサンプルイベントを作成します。

1. **[Creation method]** (作成方法) を選択します。イベントパターンは、EventBridge のスキーマまたはテンプレートから定義するか、またはカスタムイベントパターンを作成できます。

------
#### [ Existing schema ]

   既存の EventBridge スキーマを使用してイベントパターンを作成するには、以下を実行します。

   1. **[Creation method]** (作成方法) セクションの **[Method]** (メソッド) で、**[Use schema]** (スキーマを使用) を選択します。

   1. **[Event pattern]** (イベントパターン) セクションの **[Schema type]** (スキーマタイプ) で、**[Select schema from Schema registry]** (スキーマレジストリからスキーマを選択) を選択します。

   1. **[Schema registry]** (スキーマレジストリ) では、ドロップダウンボックスを選択して、`aws.events` などのスキーマレジストリの名前を入力します。表示されるドロップダウンリストからオプションを選択することもできます。

   1. **[Schema]** (スキーマ) では、ドロップダウンボックスを選択して、使用するスキーマの名前を入力します。例えば、`aws.s3@ObjectDeleted`。表示されるドロップダウンリストからオプションを選択することもできます。

   1. **[Models]** (モデル) セクションでは、任意の属性の横にある **[Edit]** (編集) ボタンを選択してプロパティを開きます。必要に応じて **[Relationship]** (関係) フィールドと **[Value]** (値) フィールドを設定し、次に **[Set]** (設定) を選択して属性を保存します。
**注記**  
属性の定義については、属性名の横にある**[Info]** (情報) アイコンを選択してください。イベントで属性のプロパティを設定する方法については、属性のプロパティダイアログボックスの **[Note]** (注意) セクションを開いてください。  
属性のプロパティを削除するには、その属性の **[Edit]** (編集) ボタンを選択し、**[Clear]** (クリア) を選択します。

   1. **[Generate event pattern in JSON]** (JSON でイベントパターンを生成) を選択し、イベントパターンを JSON テキストとして生成して検証します。

   1. (オプション) サンプルイベントをテストパターンと照らし合わせてテストするには、**[テストパターン]** を選択します。

      サンプルイベントがイベントパターンと一致するかどうかを示すメッセージボックスが表示されます。

      次のオプションのいずれかを選択することもできます。
      + **[Copy]** (コピー) — イベントパターンをデバイスのクリップボードにコピーします。
      + **[Prettify]** (整文) — 改行、タブ、スペースを追加して JSON テキストを読みやすくします。

------
#### [ Custom schema ]

   カスタムスキーマを記述し、それをイベントパターンに変換して、以下の操作を行います。

   1. **[Creation method]** (作成方法) セクションの **[Method]** (メソッド) で、**[Use schema]** (スキーマを使用) を選択します。

   1. **[Event pattern]** (イベントパターン) セクションで、**[Schema type]** (スキーマの種類) で、**[Enter schema]** (スキーマを入力) を選択します。

   1. テキストボックスにスキーマを入力します。スキーマは有効な JSON テキストとしてフォーマットする必要があります。

   1. **[Models]** (モデル) セクションで、任意の属性の横にある**[Edit]** (編集) ボタンを選択してプロパティを開きます。必要に応じて **[Relationship]** (関係) フィールドと **[Value]** (値) フィールドを設定し、次に **[Set]** (設定) を選択して属性を保存します。
**注記**  
属性の定義については、属性名の横にある**[Info]** (情報) アイコンを選択してください。イベントで属性のプロパティを設定する方法については、属性のプロパティダイアログボックスの **[Note]** (注意) セクションを開いてください。  
属性のプロパティを削除するには、その属性の **[Edit]** (編集) ボタンを選択し、**[Clear]** (クリア) を選択します。

   1. **[Generate event pattern in JSON]** (JSON でイベントパターンを生成) を選択し、イベントパターンを JSON テキストとして生成して検証します。

   1. (オプション) サンプルイベントをテストパターンと照らし合わせてテストするには、**[テストパターン]** を選択します。

      サンプルイベントがイベントパターンと一致するかどうかを示すメッセージボックスが表示されます。

      次のオプションのいずれかを選択することもできます。
      + **[Copy]** (コピー) — イベントパターンをデバイスのクリップボードにコピーします。
      + **[Prettify]** (整文) — 改行、タブ、スペースを追加して JSON テキストを読みやすくします。

------
#### [ Event pattern ]

   カスタムイベントパターンを JSON 形式で記述するには、以下を実行します。

   1. **[Creation method]** (作成方法) セクションの **[Method]** (メソッド) で、**[Custom pattern (JSON editor)]** (カスタムパターン (JSON エディタ)) を選択します。

   1. **[Event pattern]** (イベントパターン) には、カスタムイベントパターンを JSON 形式のテキストで入力します。

   1. (オプション) サンプルイベントをテストパターンと照らし合わせてテストするには、**[テストパターン]** を選択します。

      サンプルイベントがイベントパターンと一致するかどうかを示すメッセージボックスが表示されます。

      次のオプションのいずれかを選択することもできます。
      + **[Copy]** (コピー) — イベントパターンをデバイスのクリップボードにコピーします。
      + **[Prettify]** (整文) — 改行、タブ、スペースを追加して JSON テキストを読みやすくします。
      + **[Event pattern form]** (イベントパターンフォーム) — パターンビルダーでイベントパターンを開きます。パターンをそのままパターンビルダーでレンダリングできない場合、EventBridge はパターンビルダーを開く前に警告を表示します。

------

1. [**次へ**] を選択します。

## ターゲットを選択する
<a name="eb-create-rule-target"></a>

指定されたパターンに一致するイベントを受信するターゲットを 1 つまたは複数選択します。ターゲットには、EventBridge のイベントバス、Salesforce などの SaaS パートナーを含む EventBridge API 送信先、または別の AWS のサービスを含めることができます。

**ターゲットを選択するには**

1. **[ターゲットタイプ]** で、以下のいずれかのターゲットタイプを選択します。

------
#### [ Event bus ]

   1. **[EventBridge イベントバス]** を選択します。

   1. ターゲットとして使用するイベントバスを選択します。
      + このルール AWS リージョン と同じ でイベントバスを使用するには: 

        1. **[同じアカウントとリージョン内のイベントバス]** を選択します。

        1. **[ターゲットのイベントバス]** でドロップダウンボックスを選択し、イベントバスの名前を入力します。ドロップダウンリストからイベントバスを選択することもできます。

           詳細については、「[Amazon EventBridge で同じアカウントおよび同じリージョンのイベントバス間でのイベントの送信](eb-bus-to-bus.md)」を参照してください。
      + このルールとして別の AWS リージョン またはアカウントでイベントバスを使用するには:

        1. **[別のアカウントまたはリージョン内のイベントバス]** を選択します。

        1. **[ターゲットとしてのイベントバス]** に、使用するイベントバスの ARN を入力します。

           詳細については、以下を参照してください。
           + [Amazon EventBridge の AWS アカウント間でイベントを送受信する](eb-cross-account.md)
           + [Amazon EventBridge の AWS リージョン間でイベントを送受信する](eb-cross-region.md)

   1. 多くのターゲットタイプでは、EventBridge はターゲットにイベントを送信するためのアクセス許可が必要です。これらの場合、EventBridge は、イベントの実行に必要な IAM ロールを作成できます。

      **[Execution role]** (実行ロール) では、次のいずれかを実行します。
      + このルールの新しい実行ロールを作成するには:

        1. **[この特定のリソースについて新しいロールを作成]** を選択します。

        1. この実行ロールの名前を入力するか、EventBridge によって生成された名前を使用します。
      + このルールに既存の実行ロールを使用するには:

        1. **[既存のロールを使用]** を選択します。

        1. 使用する実行ロールの名前を入力するか、ドロップダウンリストから選択します。

   1. (オプション) **[追加設定]** には、ターゲットタイプで使用できるオプション設定のいずれかを指定します。

      (オプション) **[デッドレターキュー]** で、標準 Amazon SQS キューをデッドレターキューとして使用するかどうかを選択します。EventBridge は、このルールに一致するイベントがターゲットに正常に配信されなかった場合に、そのイベントをデッドレターキューに送信します。次のいずれかを行います。
      + デッドレターキューを使用しない場合は、**[None]** (なし) を選択します。
      + **Select an Amazon SQS queue in the current AWS account to use as the dead-letter queue**(デッドレターキューとして使用する現在の アカウントの Amazon SQS キューを選択) を選択し、ドロップダウンリストから使用するキューを選択します。
      + **Select an Amazon SQS queue in an other AWS account as a dead-letter queue**(他の アカウントの Amazon SQS キューをデッドレターキューとして選択) を選択し、使用するキューの ARN を入力します。キューにメッセージを送信するための EventBridge 許可を付与するリソースベースのポリシーをそのキューにアタッチする必要があります。

        詳細については、「[デッドレターキューへのアクセス許可の付与](eb-rule-dlq.md#eb-dlq-perms)」を参照してください。

------
#### [ API destination ]

   1. **[EventBridge API の宛先]** を選択します。

   1. 新規または既存の API 送信先を選択します。
      + 既存の API 送信先を使用するには、**[Use an existing API destination]** (既存の API 送信先を使用する) を選択します。次に、ドロップダウンリストから API 送信先を選択します。
      + 新しい API 送信先を作成するには、**[Create a new API destination]** (新しい API 送信先を作成する) を選択します。次に、送信先について次の詳細を指定します。
        + **[Name]** (名前) に、イベント送信先の名前を入力します。

          ロール名は AWS アカウント内で一意である必要があります。文字列は 64 文字まで設定できます。有効な文字は、**A-Z**、**a-z**、**0-9**、および **.**、**\_**、**-** (ハイフン) です。
        + (オプション) **[Description** (説明) に、アクションの簡潔な説明を入力します。

          説明の長さは、最大 512 文字です。
        + **[API destination endpoint]** (API 送信先エンドポイント) — ターゲットの URL エンドポイント。

          エンドポイント URL は **https** で始まる必要があります。**\*** をパスパラメータワイルドカードとして含めることができます。ターゲットの `HttpParameters` 属性からパスパラメータを設定できます。
        + **[HTTP method]** (HTTP メソッド) — エンドポイントを呼び出すときに使用する HTTP メソッドを選択します。
        + (オプション) **[Invocation rate limit per second]** (1 秒あたりの呼び出しレート制限) — この送信先で 1 秒あたりに受け入れられる呼び出しの最大数を入力します。

          この値はゼロより大きくなければなりません。デフォルトでは、この値は 300 に設定されます。
        + **[接続]** — 新しい接続を使用するか既存の接続を使用するかを選択します。
          + 既存の接続を使用するには、**[既存の接続を使用]** を選択し、ドロップダウンリストから接続を選択します。
          + この送信先に新しい接続を作成するには、**[新しい接続を作成]** を選択し、その接続の **[名前]**、**[送信先タイプ]**、および **[認証タイプ]** を定義します。この接続にオプションの **[Description]** (説明) を追加することもできます。

   1. 多くのターゲットタイプでは、EventBridge はターゲットにイベントを送信するためのアクセス許可が必要です。これらの場合、EventBridge は、イベントの実行に必要な IAM ロールを作成できます。

      **[Execution role]** (実行ロール) では、次のいずれかを実行します。
      + このルールの新しい実行ロールを作成するには:

        1. **[この特定のリソースについて新しいロールを作成]** を選択します。

        1. この実行ロールの名前を入力するか、EventBridge によって生成された名前を使用します。
      + このルールに既存の実行ロールを使用するには:

        1. **[既存のロールを使用]** を選択します。

        1. 使用する実行ロールの名前を入力するか、ドロップダウンリストから選択します。

   1. (オプション) **[追加設定]** には、ターゲットタイプで使用できるオプション設定のいずれかを指定します。

      EventBridge では、特定の AWS サービスの以下のフィールドがすべて表示されない場合があります。

      1. (オプション) [ターゲット入力を設定] で、一致するイベントに対してターゲットに送信されるテキストをカスタマイズする方法を選択します。次のいずれかを選択します。
         + **一致したイベント** — EventBridge は元のソースイベント全体をターゲットに送信します。これがデフォルトです。
         + **一致したイベントの一部** — EventBridge は、元のソースイベントの指定された部分のみをターゲットに送信します。

           **[一致したイベントの一部を指定]** で、EventBridge からターゲットに送信するイベント部分を定義する JSON パスを指定します。
         + **定数 (JSON テキスト)** — EventBridge は指定された JSON テキストのみをターゲットに送信します。元のソースイベントは、いずれの部分も送信されません。

           **[JSON で定数を指定]** で、EventBridge がイベントの代わりにターゲットに送信する JSON テキストを指定します。
         + **入力トランスフォーマー** — EventBridge からターゲットに送信するテキストをカスタマイズするように入力トランスフォーマーを設定します。詳細については、「[Amazon EventBridge 入力変換](eb-transform-target-input.md)」を参照してください。

           1. **[入力トランスフォーマーを設定]** を選択します。

           1. 「[EventBridge でルールを作成するときに入力トランスフォーマーを設定する](eb-transform-input-rule.md)」の手順に従って入力トランスフォーマーを設定します。

      1. (オプション) **[再試行ポリシー]** で、エラーが発生した後に EventBridge がターゲットへのイベント送信を再試行する方法を指定します。
         + **イベントの最大経過時間** — EventBridge が未処理のイベントを保持する最大時間 (時間、分、秒単位) を入力します。デフォルトは 24 時間です。
         + **再試行回数** — エラーが発生した後、EventBridge がターゲットへのイベント送信を再試行する最大回数を入力します。デフォルトは 185 回です。

      1. (オプション) **[デッドレターキュー]** で、標準 Amazon SQS キューをデッドレターキューとして使用するかどうかを選択します。EventBridge は、このルールに一致するイベントがターゲットに正常に配信されなかった場合に、そのイベントをデッドレターキューに送信します。次のいずれかを行います。
         + デッドレターキューを使用しない場合は、**[なし]** を選択します。
         + **現在の AWS アカウントの Amazon SQS キューを選択してデッドレターキューとして使用し**、ドロップダウンリストから使用するキューを選択します。
         + **他の AWS アカウントの Amazon SQS キューをデッドレターキューとして選択** を選択し、使用するキューの ARN を入力します。キューにメッセージを送信するための EventBridge 許可を付与するリソースベースのポリシーをそのキューにアタッチする必要があります。

           詳細については、「[デッドレターキューへのアクセス許可の付与](eb-rule-dlq.md#eb-dlq-perms)」を参照してください。

   詳細については、「[Amazon EventBridge のターゲットとしての API 送信先](eb-api-destinations.md)」を参照してください。

------
#### [ AWS のサービス ]

   1. **AWS のサービス** を選択します。

   1. **[Select a target]** (ターゲットの選択) で、ターゲットとして使用する AWS のサービス を選択します。

   1. クロスアカウントターゲットをサポートする AWS サービスを選択した場合は、イベントバスと同じアカウントのターゲットを選択するか、別のアカウントを選択できます。
      + 同じアカウントのターゲットの場合、**[ターゲットタイプ]** で **[このアカウントのターゲット]**を選択します。

        1. 選択したサービスにリクエストされた情報を入力します。
**注記**  
表示されるフィールドは、選択したサービスによって異なります。利用できるターゲットの詳細については、「[EventBridge コンソールで利用可能なイベントバスターゲット](eb-targets.md#eb-console-targets)」を参照してください。

        1. 多くのターゲットタイプでは、EventBridge はターゲットにイベントを送信するためのアクセス許可が必要です。これらの場合、EventBridge は、イベントの実行に必要な IAM ロールを作成できます。

           **[Execution role]** (実行ロール) では、次のいずれかを実行します。
           + このルールの新しい実行ロールを作成するには:

             1. **[この特定のリソースについて新しいロールを作成]** を選択します。

             1. この実行ロールの名前を入力するか、EventBridge によって生成された名前を使用します。
           + このルールに既存の実行ロールを使用するには:

             1. **[既存のロールを使用]** を選択します。

             1. 使用する実行ロールの名前を入力するか、ドロップダウンリストから選択します。
      + 別のアカウントのターゲットの場合は、**ターゲットタイプ**で**別の AWS アカウントのターゲット**を選択します。

        1. イベントを送信するターゲットリソースの ARN を入力します。

        1. 選択したサービスにリクエストされた追加の情報を入力します。

        1. 使用する実行ロールの名前をドロップダウンリストから選択します。

   1. (オプション) **[追加設定]** には、ターゲットタイプで使用できるオプション設定のいずれかを指定します。

      1. (オプション) [ターゲット入力を設定] で、一致するイベントに対してターゲットに送信されるテキストをカスタマイズする方法を選択します。次のいずれかを選択します。
         + **一致したイベント** — EventBridge は元のソースイベント全体をターゲットに送信します。これがデフォルトです。
         + **一致したイベントの一部** — EventBridge は、元のソースイベントの指定された部分のみをターゲットに送信します。

           **[一致したイベントの一部を指定]** で、EventBridge からターゲットに送信するイベント部分を定義する JSON パスを指定します。
         + **定数 (JSON テキスト)** — EventBridge は指定された JSON テキストのみをターゲットに送信します。元のソースイベントは、いずれの部分も送信されません。

           **[JSON で定数を指定]** で、EventBridge がイベントの代わりにターゲットに送信する JSON テキストを指定します。
         + **入力トランスフォーマー** — EventBridge からターゲットに送信するテキストをカスタマイズするように入力トランスフォーマーを設定します。詳細については、「[Amazon EventBridge 入力変換](eb-transform-target-input.md)」を参照してください。

           1. **[入力トランスフォーマーを設定]** を選択します。

           1. 「[EventBridge でルールを作成するときに入力トランスフォーマーを設定する](eb-transform-input-rule.md)」の手順に従って入力トランスフォーマーを設定します。

      1. (オプション) **[再試行ポリシー]** で、エラーが発生した後に EventBridge がターゲットへのイベント送信を再試行する方法を指定します。
         + **イベントの最大経過時間** — EventBridge が未処理のイベントを保持する最大時間 (時間、分、秒単位) を入力します。デフォルトは 24 時間です。
         + **再試行回数** — エラーが発生した後、EventBridge がターゲットへのイベント送信を再試行する最大回数を入力します。デフォルトは 185 回です。

      1. (オプション) **[デッドレターキュー]** で、標準 Amazon SQS キューをデッドレターキューとして使用するかどうかを選択します。EventBridge は、このルールに一致するイベントがターゲットに正常に配信されなかった場合に、そのイベントをデッドレターキューに送信します。次のいずれかを行います。
         + デッドレターキューを使用しない場合は、**[なし]** を選択します。
         + **現在の AWS アカウントの Amazon SQS キューを選択してデッドレターキューとして使用し**、ドロップダウンリストから使用するキューを選択します。
         + **他の AWS アカウントの Amazon SQS キューをデッドレターキューとして選択** を選択し、使用するキューの ARN を入力します。キューにメッセージを送信するための EventBridge 許可を付与するリソースベースのポリシーをそのキューにアタッチする必要があります。

           詳細については、「[デッドレターキューへのアクセス許可の付与](eb-rule-dlq.md#eb-dlq-perms)」を参照してください。

------

1. (オプション) **[Add another target]** (別のターゲットを追加) を選択して、このルールに別のターゲットを追加します。

1. [**次へ**] を選択します。

## タグとレビュールールを設定する
<a name="eb-create-rule-review"></a>

最後に、ルールに一致する任意のタグを入力し、ルールを確認して作成します。

**タグを設定し、ルールを確認して作成するには**

1. (オプション) ルールに 1 つ以上のタグを入力します。詳細については、「[Amazon EventBridge でのリソースのタグ付け](eb-tagging.md)」を参照してください。

1. **[Next]** (次へ) を選択します。

1. 新しいルールの詳細を確認します。セクションを変更するには、そのセクションの横にある **[Edit]** (編集) ボタンを選択します。

   ルールの詳細を確認したら、**[Create rule]** (ルールを作成) を選択します。