cron 式と rate 式を使用して Amazon EventBridge でルールをスケジュールする - Amazon EventBridge

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

cron 式と rate 式を使用して Amazon EventBridge でルールをスケジュールする

EventBridge でスケジュールされたルールを作成するときに、EventBridge がルールを実行するタイミングを決定するスケジュールパターンを指定できます。

  • 特定の日時にルールを実行するには、cron 式を使用します。

  • ルールを特定の間隔で実行するには、rate 式を使用します。

cron 式

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

[Syntax] (構文)

cron(fields)
フィールド ワイルドカード

0-59

, - * /

時間

0-23

, - * /

1-31

, - * ? / L W

1-12 または JAN-DEC

, - * /

曜日

1-7 または SUN-SAT

, - * ? L #

1970-2199

, - * /

ワイルドカード
  • , (カンマ) のワイルドカードには、追加の値が含まれます。月フィールドの、「JAN,FEB,MAR」は、1 月、2 月、3 月を含みます。

  • - (ダッシュ) のワイルドカードは、範囲を指定します。日フィールドの「1-15」は、指定した月の 1 日から 15 日を含みます。

  • [*] (アスタリスク) のワイルドカードには、フィールドのすべての値が含まれます。[時間] フィールドの * には すべての時間が含まれます。[*] を日および曜日フィールドの両方に使用することはできません。一方に使用する場合は、もう一方に [?] を使用する必要があります。

  • [/] (スラッシュ) ワイルドカードで増分を指定します。分フィールドで、「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 フィールドの # ワイルドカードは、月の指定された曜日の特定のインスタンスを指定します。例えば、3#2 は、月の第 2 火曜日を示します。3 は週の 3 番目の日 (火曜日) を示し、2 は月のそのタイプの 2 番目の日を示します。

    注記

    「#」文字を使用する場合、曜日フィールドには 1 つの式しか定義できません。例えば、"3#1,6#3" は 2 つの式として解釈されるため、無効です。

制約事項
  • cron 式の日フィールドと曜日フィールドを同時に指定することはできません。一方のフィールドに値または * (アスタリスク) を指定する場合、もう一方のフィールドで ? (疑問符) を使用する必要があります。

  • 1 分より短い間隔を導き出す cron 式はサポートされていません。

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

時間 曜日 意味

0

10

*

*

?

*

毎日午前 10:00 (UTC+0) に実行

15

12

*

*

?

*

毎日午後 12:15 (UTC+0) に実行

0

18

?

*

MON-FRI

*

毎週月曜日から金曜日まで午後 6:00 (UTC+0) に実行

0

8

1

*

?

*

毎月 1 日の午前 8:00 (UTC+0) に実行

0/15

*

*

*

?

*

15 分ごとに実行

0/10

*

?

*

MON-FRI

*

月曜日から金曜日まで 10 分ごとに実行

0/5

8-17

?

*

MON-FRI

*

月曜日から金曜日まで午前 8:00 から午後 5:55 (UTC+0) の間に 5 分ごとに実行

0/30

20-2

?

*

MON-FRI

*

月曜日から金曜日まで開始日の午後10時から翌日の午前2時 (UTC) の間、30分間隔で実行

月曜日の午前 12 時から午前 2 時 (UTC) まで実行します。

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

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

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

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

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

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

rate 式

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

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

[Syntax] (構文)

rate(value unit)
value

正数。

単位

時刻の単位。値 1 には、minute などさまざまな単位が必要です。また、1 を超える値には minutes などの単位が必要です。

有効な値: minute | minutes | hour | hours | day | days

制約事項

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

次の例に示しているのは、AWS CLI put-rule コマンドで 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