

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

# Amazon EventBridge でスケジュールされたルール (レガシー) のスケジュールパターンを設定する
<a name="eb-scheduled-rule-pattern"></a>

**注記**  
スケジュールされたルールは EventBridge のレガシー機能です。  
EventBridge は、スケジュールされたタスクを大規模に一元的に作成、実行、管理する、より柔軟で強力な方法を提供します: EventBridge スケジューラ。EventBridge スケジューラでは、繰り返しのパターンに cron やレート式を使ってスケジュールを作成したり、1回限りの呼び出しを設定したりできます。配信時間枠の柔軟な設定、再試行制限の定義、失敗した API 呼び出しの最大保持時間の設定を行うことができます。  
スケジューラは高度にカスタマイズ可能で、ターゲット API オペレーションと AWS サービスの幅広いセットにより、スケジュールされたルールよりもスケーラビリティが向上します。スケジュールに従ってターゲットを呼び出すには、Scheduler を使用することをお勧めします。  
詳細については、[新しいスケジュールを作成する](using-eventbridge-scheduler.md#using-eventbridge-scheduler-create)「」または*[EventBridge スケジューラユーザーガイド](https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html)*」を参照してください。

EventBridge でスケジュールされたルールを作成するときに、EventBridge がルールを実行するタイミングを決定するスケジュールパターンを指定できます。
+ 特定の日時にルールを実行するには、*cron* 式を使用します。
+ ルールを特定の間隔で実行するには、*rate* 式を使用します。

## cron 式
<a name="eb-cron-expressions"></a>

cron 式には 6 つの必須フィールドがあり、それらは空白で区切られます。

**[Syntax]** (構文)

```
cron(fields)
```


| **フィールド** | **値** | **ワイルドカード** | 
| --- | --- | --- | 
|  分  |  0-59  |  , - \$1 /  | 
|  時間  |  0-23  |  , - \$1 /  | 
|  日  |  1-31  |  , - \$1 ? / L W  | 
|  月  |  1-12 または JAN-DEC  |  , - \$1 /  | 
|  曜日  |  1-7 または SUN-SAT  |  , - \$1 ? L \$1  | 
|  年  |  1970-2199  |  , - \$1 /  | 

**ワイルドカード**
+ **,** (カンマ) のワイルドカードには、追加の値が含まれます。月フィールドの、「JAN,FEB,MAR」は、1 月、2 月、3 月を含みます。
+ **-** (ダッシュ) のワイルドカードは、範囲を指定します。日フィールドの「1-15」は、指定した月の 1 日から 15 日を含みます。
+ **[\$1]** (アスタリスク) のワイルドカードには、フィールドのすべての値が含まれます。[時間] フィールドの **\$1** には すべての時間が含まれます。[**\$1**] を日および曜日フィールドの両方に使用することはできません。一方に使用する場合は、もう一方に [**?**] を使用する必要があります。
+ [**/**] (スラッシュ) ワイルドカードで増分を指定します。分フィールドで、「1/10」と入力して、その時間の最初の分から始めて、10 分毎を指定できます (11 分、21 分、31 分など)。
+ **?** (疑問符) ワイルドカードは任意を意味します。[日] フィールドに **7** と入力し、何曜日であってもかまわない場合、[曜日] フィールドに **?** を入力できます。
+ Day-of-month フィールドまたは Day-of-week フィールドの、ワイルドカード **L** は月または週の最終日を指定します。
+ Day-of-month フィールドのワイルドカード **W** は、平日を指定します。Day-of-month フィールドで、**3W** は月の 3 日目に最も近い平日を指定します。
+ Day-of-week フィールドの **\$1** ワイルドカードは、月の指定された曜日の特定のインスタンスを指定します。例えば、3\$12 は、月の第 2 火曜日を示します。3 は週の 3 番目の日 (火曜日) を示し、2 は月のそのタイプの 2 番目の日を示します。
**注記**  
「\$1」文字を使用する場合、曜日フィールドには 1 つの式しか定義できません。例えば、`"3#1,6#3"` は 2 つの式として解釈されるため、無効です。

**制限事項**
+ cron 式の日フィールドと曜日フィールドを同時に指定することはできません。一方のフィールドに値または \$1 (アスタリスク) を指定する場合、もう一方のフィールドで **?** (疑問符) を使用する必要があります。
+ 1 分より短い間隔を導き出す cron 式はサポートされていません。

**例**  
スケジュールに基づいたルールを作成するときは、以下のサンプルの cron 文字列を使用できます。


| 分 | 時間 | 日 | 月 | 曜日 | 年 | 意味 | 
| --- | --- | --- | --- | --- | --- | --- | 
|  0  |  10  |  \$1  |  \$1  |  ?  |  \$1  |  毎日午前 10:00 (UTC\$10) に実行  | 
|  15  |  12  |  \$1  |  \$1  |  ?  |  \$1  |  毎日午後 12:15 (UTC\$10) に実行  | 
|  0  |  18  |  ?  |  \$1  |  MON-FRI  |  \$1  |  毎週月曜日から金曜日まで午後 6:00 (UTC\$10) に実行  | 
|  0  |  8  |  1  |  \$1  |  ?  |  \$1  |  毎月 1 日の午前 8:00 (UTC\$10) に実行  | 
|  0/15  |  \$1  |  \$1  |  \$1  |  ?  |  \$1  |  15 分ごとに実行  | 
|  0/10  |  \$1  |  ?  |  \$1  |  MON-FRI  |  \$1  |  月曜日から金曜日まで 10 分ごとに実行  | 
|  0/5  |  8-17  |  ?  |  \$1  |  MON-FRI  |  \$1  |  月曜日から金曜日まで午前 8:00 から午後 5:55 (UTC\$10) の間に 5 分ごとに実行  | 
|  0/30  |  20-2  |  ?  |  \$1  |  MON-FRI  |  \$1  |  月曜日から金曜日まで開始日の午後10時から翌日の午前2時 (UTC) の間、30分間隔で実行 月曜日の午前 12 時から午前 2 時 (UTC) まで実行します。  | 



次の例では、毎日午後 12:00 (UTC\$10) に実行されるルールを作成します。

```
aws events put-rule --schedule-expression "cron(0 12 * * ? *)" --name MyRule1
```

次の例では、毎日午前 2:05 と 午後2:35 (UTC\$10) に実行されるルールを作成します。

```
aws events put-rule --schedule-expression "cron(5,35 14 * * ? *)" --name MyRule2
```

次の例では、2019～2022 年の毎月最後の金曜日の午前 10:15 (UTC\$1\$10) に実行されるルールを作成します。

```
aws events put-rule --schedule-expression "cron(15 10 ? * 6L 2019-2022)" --name MyRule3
```

## rate 式
<a name="eb-rate-expressions"></a>

*rate 式*は、予定されたイベントルールを作成すると開始され、その定義済みのスケジュールに基づいて実行されます。

rate 式には 2 つの必須フィールドがあり、空白で区切られます。

**[Syntax]** (構文)

```
rate(value unit)
```

値  
正数。

単位  
時刻の単位。値 1 には、`minute` などさまざまな単位が必要です。また、1 を超える値には `minutes` などの単位が必要です。  
有効な値: minute \$1 minutes \$1 hour \$1 hours \$1 day \$1 days

**制限事項**  
値が 1 に等しい場合、単位は単数形であることが必要です。値が 1 より大きい場合、単位は複数であることが必要です。たとえば、rate(1 hours) と rate(5 hour) は有効ではありませんが、rate(1 hour) と rate(5 hours) は有効です。

**例**  
次の例は、 `put-rule` コマンドで AWS CLI rate 式を使用する方法を示しています。最初の例では、ルールを毎分起動し、次の例は 5 分ごとにルールを起動し、3 番目の例は 1 時間に 1 回ルールを起動し、最後の例は 1 日に 1 回ルールを起動します。

```
aws events put-rule --schedule-expression "rate(1 minute)" --name MyRule2
```

```
aws events put-rule --schedule-expression "rate(5 minutes)" --name MyRule3
```

```
aws events put-rule --schedule-expression "rate(1 hour)" --name MyRule4
```

```
aws events put-rule --schedule-expression "rate(1 day)" --name MyRule5
```