cron を使用して Canary 実行をスケジュールする
cron 式を使用すると、Canary のスケジュールを柔軟に立てることができます。cron 式には、次の表に示す順序で 5 つまたは 6 つのフィールドが含まれています。フィールドはスペースで区切ります。構文は、CloudWatch コンソールを使用して Canary を作成するか、AWS CLI または AWS SDK を使用するかによって異なります。コンソールを使用する場合は、最初の 5 つのフィールドのみを指定します。AWS CLI または AWS SDK を使用する場合は、6 つのフィールドをすべて指定し、Year
フィールドに *
を指定する必要があります。
フィールド | 許可される値 | 使用できる特殊文字 |
---|---|---|
分 |
0-59 |
, - * / |
時間 |
0-23 |
, - * / |
日 |
1-31 |
, - * ? / L W |
月 |
1-12 または JAN-DEC |
, - * / |
曜日 |
1-7 または SUN-SAT |
, - * ? L # |
年 |
* |
特殊文字
-
, (カンマ) は、フィールドの式に複数の値を含めます。例えば、[月] フィールドの、「JAN,FEB,MAR」は、1 月、2 月、3 月を含みます。
-
特殊文字 - (ダッシュ) は、範囲を指定します。日フィールドの、「1-15」は、指定した月の 1 日から 15 日を含みます。
-
* (アスタリスク) 特殊文字には、フィールド内のすべての値が含まれます。[時間] フィールドの * には すべての時間が含まれます。同じ式で、[日] フィールドと [曜日] フィールドの両方で * を使用することはできません。一方に使用する場合は、もう一方に [?] を使用する必要があります。
-
/ (スラッシュ) は増分を指定します。[分] フィールドに 1/10 と入力して、時間の最初の分から開始して 10 分おきを指定できます (例えば、11 分、21 分、31 分など)。
-
? (疑問符) は、任意を意味します。[日] フィールドに 7 と入力し、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 つ目を指します。
制限事項
-
cron 式の日フィールドと曜日フィールドを同時に指定することはできません。一方のフィールドに値または
*
(アスタリスク) を指定する場合、もう一方のフィールドで ? (疑問符) を使用する必要があります。 -
1 分より短い間隔を導き出す cron 式はサポートされていません。
-
実行前に 1 年以上待つように Canary を設定することはできないため、[
Year
] フィールドでは*
のみ指定することができます。
例
Canary を作成するときは、次のサンプルの cron 文字列を参照できます。以下の例は、AWS CLI または AWS SDK を使用して Canary を作成または更新するための正しい構文です。CloudWatch コンソールを使用している場合は、各例の最後の 「*
」を省略します。
式 | 意味 |
---|---|
|
毎日午前 10:00 (UTC) に実行 |
|
毎日午後 12:15 (UTC) に実行 |
|
毎週月曜日から金曜日まで午後 6:00 (UTC) に実行 |
|
毎月初日の午前 8:00 (UTC) に実行 |
|
毎週月曜日から土曜日まで 10 分ごとに実行 |
|
月曜日から金曜日まで午前 8:00 から午後 5:55 (UTC) まで 5 分ごとに実行 |