翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ルールは、イベントに応じて実行したり、一定の時間間隔で実行したりすることができます。例えば、AWS Lambda 関数を定期的に実行するには、スケジュールに従って実行するルールを作成します。
注記
スケジュールに基づいて実行されるルールを作成できますが、EventBridge では、スケジュールされたタスクを一元的に作成、実行、管理するための、より柔軟で強力な方法として、EventBridge スケジューラ が提供されるようになりました。EventBridge スケジューラ では、繰り返しのパターンに cron や rate 式を使ってスケジュールを作成したり、1 回限りの呼び出しを設定したりできます。配信時間枠の柔軟な設定、再試行制限の定義、失敗した API 呼び出しの最大保持時間の設定を行うことができます。
Scheduler は高度にカスタマイズ可能で、スケジュールルールよりもスケーラビリティが高く、ターゲット API 操作と AWS のサービスの範囲が広がります。スケジュールに従ってターゲットを呼び出すには、Scheduler を使用することをお勧めします。
詳細については、「新しいスケジュールを作成する」を参照してください。
EventBridge では、次の 2 種類のスケジュールされたルールを作成できます。
-
一定の間隔で実行するルール
EventBridge は、これらのルールを定期的に (20 分間隔など) に実行します。
スケジュールされたルールのレートを指定するには、rate 式を定義します。
-
特定の時間に実行するルール
EventBridge は、これらのルールを特定の日時 (毎月第一月曜日の 太平洋標準時午前 8:00 時など)
スケジュールされたルールを実行する時刻と日付を指定するには、cron 式を定義します。
rate 式は定義がより簡単であり、cron 式はスケジュールを詳細に制御します。例えば、cron 式を使用すると、毎週、または毎月の特定の日の指定した時刻に実行されるルールを定義できます。それに対して、rate 式では、1 時間に 1 回または 1 日 1 回など、一定の間隔でルールを実行します。
スケジュールされたイベントはすべて UTC+0 のタイムゾーンを使用し、スケジュールの最小精度は 1 分です。
注記
Eventbridge のスケジュール式は、秒レベルの精度ではありません。cron 式を使用した最小の粒度は 1 分です。EventBridge とターゲットサービスは分散しているため、スケジュールされたルールがトリガーされてからターゲットサービスがターゲットリソースを実行するまでの間に数秒の遅延が発生することもあります。
次のビデオでは、タスクのスケジューリングの概要を示します。
トピック
定期的に実行するルールの作成
次の手順では、定期的に実行する Eventbridge ルールを作成する方法を示します。
注記
スケジュールされたルールは、デフォルトのイベントバスを使用してのみ作成できます。
ルールを定義する
まず、ルールを識別するため、ルールの名前と説明を入力します。
ルールの詳細を定義するには
Amazon EventBridge コンソール (https://console.aws.amazon.com/events/
) を開きます。 -
ナビゲーションペインで ルール] を選択します。
-
[Create rule] (ルールの作成) を選択します。
-
ルールの名前を入力し、オプションで説明を入力します。
ルールには、同じ AWS リージョン 内および同じイベントバス上の別のルールと同じ名前を付けることはできません。
-
[イベントバス] で、デフォルトのイベントバスを選択します。スケジュールされたルールは、デフォルトのイベントバスを使用してのみ作成できます。
ルールを作成してすぐに有効にするには、[選択したイベントバスでルールを有効にする] オプションをオンにします。
-
ルールタイプ では、スケジュール] を選択します。
この時点で、定期的に実行するルールの作成を続けるか、Amazon EventBridge スケジューラを使用するかを選択できます。
-
続行する方法を選択します。
EventBridge スケジューラを使用してスケジュールを作成する
注記
EventBridge スケジューラーはサーバーレススケジューラであり、一元化されたマネージドサービスからタスクを作成、実行、管理できます。イベントバスやルールに依存しない、1 回限りの定期的なスケジューリング機能を提供します。EventBridge スケジューラは高度にカスタマイズ可能で、EventBridge のスケジュールルールよりもスケーラビリティが高く、ターゲット API 操作と AWS サービスの範囲が広がります。
スケジュールに従ってターゲットを呼び出すには、EventBridge スケジューラを使用することをお勧めします。詳細については、「Amazon EventBridge スケジューラユーザーガイド」の「Amazon EventBridge スケジューラとは」を参照してください。
[EventBridge スケジューラで続行] を選択します
EventBridge は、EventBridge スケジューラコンソールを開き、[スケジュールを作成] ページを表示します。
EventBridge スケジューラコンソールでスケジュールを作成します。
引き続き EventBridge を使用してデフォルトイベントバスのスケジュールされたルールを作成する
[続行してルールを作成する] を選択します。
スケジュールを定義する
次に、スケジュールパターンを定義します。
スケジュールパターンを定義するには
-
[スケジュールパターン] で、スケジュールを特定の時間に実行するか、一定の間隔で実行するかを選択します。
毎月第一月曜日の太平洋標準日午前 8:00 など、特定の時間に実行するきめ細かいスケジュールを選択します。
[cron 式] で、EventBridge がこのスケジュールされたルールをいつ実行するかを決めるために使用する cron 式を定義するフィールドを指定します。
すべてのフィールドを指定すると、EventBridge はこのスケジュールされたルールを実行する以降の 10 個の日付を表示します。これらの日付を UTC で表示するか、ローカルタイムゾーンで表示するかを選択できます。
cron 式の作成の詳細については、「cron 式」を参照してください。
-
[Next] を選択します。
ターゲットを選択する
指定されたパターンに一致するイベントを受信するターゲットを 1 つまたは複数選択します。ターゲットには、EventBridge のイベントバス、Salesforce などの SaaS パートナーを含む EventBridge API 送信先、または別の AWS のサービス を含めることができます。
ターゲットを選択するには
-
[ターゲットタイプ] で、以下のいずれかのターゲットタイプを選択します。
EventBridge イベントバスを選択するには、[EventBridge event bus] (EventBridge イベントバス) を選択してから、次の操作を行います。
-
このルールと同じ AWS リージョンでイベントバスを使用するには:
[同じアカウントとリージョン内のイベントバス] を選択します。
[ターゲットのイベントバス] でドロップダウンボックスを選択し、イベントバスの名前を入力します。ドロップダウンリストからイベントバスを選択することもできます。
詳細については、「Amazon EventBridge で同じアカウントおよび同じリージョンのイベントバス間でのイベントの送信」を参照してください。
-
別の AWS リージョン またはアカウント内のイベントバスをこのルールとして使用するには:
[別のアカウントまたはリージョン内のイベントバス] を選択します。
[ターゲットとしてのイベントバス] に、使用するイベントバスの ARN を入力します。
詳細については、以下を参照してください。
-
多くのターゲットタイプでは、EventBridge はターゲットにイベントを送信するためのアクセス許可が必要です。これらの場合、EventBridge は、イベントの実行に必要な IAM ロールを作成できます。
[Execution role] (実行ロール) では、次のいずれかを実行します。
-
このルールの新しい実行ロールを作成するには:
[この特定のリソースについて新しいロールを作成] を選択します。
この実行ロールの名前を入力するか、EventBridge によって生成された名前を使用します。
-
このルールに既存の実行ロールを使用するには:
[既存のロールを使用] を選択します。
使用する実行ロールの名前を入力するか、ドロップダウンリストから選択します。
-
-
(オプション) [追加設定] には、ターゲットタイプで使用できるオプション設定のいずれかを指定します。
(オプション) [デッドレターキュー] で、標準 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 許可を付与するリソースベースのポリシーをそのキューにアタッチする必要があります。
詳細については、「デッドレターキューへのアクセス許可の付与」を参照してください。
-
(オプション) [Add another target] (別のターゲットを追加) を選択して、このルールに別のターゲットを追加します。
-
[Next] を選択します。
タグとレビュールールを設定する
最後に、ルールに一致する任意のタグを入力し、ルールを確認して作成します。
タグを設定し、ルールを確認して作成するには
-
(オプション) ルールに 1 つ以上のタグを入力します。詳細については、「Amazon EventBridge でのリソースのタグ付け」を参照してください。
-
[Next] を選択します。
-
新しいルールの詳細を確認します。セクションを変更するには、そのセクションの横にある [Edit] (編集) ボタンを選択します。
ルールの詳細を確認したら、[Create rule] (ルールを作成) を選択します。