

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

# チュートリアル: EventBridge 入力トランスフォーマーを使用して、スケジュールに従ってイベント情報を AWS Batch ターゲットに渡す
<a name="cwe-input-transformer"></a>

EventBridge 入力トランスフォーマーを使用して、ジョブ送信 AWS Batch でイベント情報を に渡すことができます。これは、他の AWS イベント情報の結果としてジョブを呼び出す場合は、特に重要です。例えば、Amazon S3 バケットへのオブジェクトのアップロード時など。または、コンテナのコマンドで、パラメータの置換値を使用したジョブ定義を使用できます。EventBridge インプットトランスフォーマーは、イベントデータに基づいてパラメータ値を提供できます。

その後、開始する AWS Batch イベントからの情報を解析し、`parameters`オブジェクトに変換するイベントターゲットを作成します。ジョブが実行されると、トリガーイベントからのパラメータがジョブコンテナのコマンドに渡されます。

**注記**  
このシナリオでは、すべての AWS リソース (Amazon S3 バケット、EventBridge ルール、CloudTrail ログなど) が同じリージョンに存在する必要があります。

**入力トランスフォーマーを使用する AWS Batch ターゲットを作成するには**

1. Amazon EventBridge コンソールの [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/) を開いてください。

1. ナビゲーションバーから、 AWS リージョン 使用する を選択します。

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

1. **ルールの作成** を選択します。

1. **名前** で、コンピューティング環境の一意な名前を指定します。名前は最大 64 文字まで入力できます。大文字、小文字、数字、ハイフン (-)、アンダースコア (\$1) を含めることができます。
**注記**  
ルールは、同じ AWS リージョン および同じイベントバスの別のルールと同じ名前にすることはできません。

1. (オプション) **説明**に、ルールの説明を入力します。

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

1. (オプション) すぐに実行しないバスのルールについては、そのルールをオフにします。

1. **ルールタイプ** では、**[スケジュール]** を選択します。

1. **続行してルールを作成する** または **次へ** を選択します。

1. **[スケジュールパターン]** では、次のいずれかを実行します。
   + **毎月第一月曜日の太平洋標準日午前 8:00 など、特定の時間に実行される詳細なスケジュール**を選択してから、cron 式を入力します。詳細については、「*Amazon EventBridge ユーザーガイド*」の「[Cron 式](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html#eb-cron-expressions)」を参照してください。
   + **一定の間隔 (10 分ごとなど) で実行するスケジュール**を選択してから、rate 式を入力します。

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

1. **[ターゲットタイプ]** には、**AWS のサービス** を選択します。

1. **ターゲットの選択** で、**バッチジョブのキュー** を選択します。次を設定します。
   + **[ジョブキュー]**: ジョブをスケジュールするジョブキューの Amazon リソースネーム (ARN) を入力します。
   + **[ジョブ定義]**: ジョブに使用するジョブ定義の名前、改正、または完全な ARN を入力します。
   + **[ジョブ名]**: ジョブの名前を入力します。
   + **[配列サイズ]**: (オプション) 複数のコピーを実行するためのジョブの配列サイズを入力します。詳細については、[配列ジョブ](array_jobs.md)を参照してください。
   + **[ジョブの試行]**: (オプション) ジョブが失敗したときに再試行する回数を入力します。詳細については、[ジョブの再試行の自動化](job_retries.md)を参照してください。

1. **[バッチジョブキュー]** ターゲットタイプで、EventBridge はターゲットにイベントを送信するためのアクセス許可が必要です。EventBridge は、ルールの実行に必要な IAM ロールを作成できます。次のいずれかを行います。
   + 自動的に IAM ロールを作成するには、**この特定のリソースに対して新しいロールを作成する** を選択します。
   + 以前に作成した IAM ロールを使用するには、**既存のロールの使用** を選択します。

1. (オプション) **追加設定** を展開します。

1. **追加設定** セクションの **ターゲット入力の設定]** で **[入力トランスフォーマー]** を選択します。

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

1. (オプション) **サンプルイベント** では:

   1. **サンプルイベントタイプ** では、**AWS イベント** を選択します。

   1. **サンプルイベント**では、**バッチジョブの状態変更** を選択します。

1. **ターゲット入力トランスフォーマー** の **入力パス** で、トリガーするイベントから解析する値を指定します。例えば、**バッチジョブの状態変更** イベントを解析するには、次の JSON 形式を使用します。

   ```
   {
       "instance": "$.detail.jobId",
       "state": "$.detail.status"
   }
   ```

1. **[テンプレート]** では、以下を入力します。

   ```
   {
       "instance": <jobId> ,
       "status": <status>
   }
   ```

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

1. **イベントの最大保存期間** では、未処理のイベントを保存する時間間隔を指定します。

1. **再試行** では、イベントを再試行する回数を入力します。

1. **デッドレターキュー** では、未処理イベントの取扱いに関するオプションを選択します。必要に応じて、デッドレターキューに Amazon SQS キューを指定します。

1. (オプション) **別のターゲットを追加** を選択して、別のターゲットを追加します。

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

1. (オプション) **タグ** で **新しいタグを追加** を選択し、リソースラベルを追加します。詳細については、*Amazon EventBridge ユーザーガイド*の [Amazon EventBridge のタグ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-tagging.html)を参照してください。

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

1. **レビューおよび作成**では、設定手順を確認してください。変更する必要がある場合は、**[編集]** を選択します。完了したら、**ルールの作成** を選択します。