CRON の例とリファレンス
Sumo Logic では、Quartz CRON 式が使用されます。Quartz CRON 式の構文を以下に示します。
<seconds (秒)><minutes (分)><hours (時)><day of the month (日)><month (月)><day of the week (曜日)> <year (年)>
ここで、<year (年)> は省略可能です。
CRON 式の指定方法については、「CRON リファレンス」を参照してください。式の例ついては、「CRON の例」を参照してください。
CRON リファレンス
Cron 式は、6 つの必須フィールド (秒、分、時、日、月、曜日) と 1 つの省略可能なフィールド (年) がホワイト スペースで区切られています。
フィールド名 |
使用可能な値 |
使用可能な特殊文字 |
Seconds (秒) | 0 ~ 59 | - * / |
Minutes (分) | 0 ~ 59 | - * / |
Hours (時) | 0 ~ 23 | - * / |
Day (of month) (日) | 1 ~ 31 | * ? / L W |
Month (月) | 1 ~ 12 または JAN ~ DEC | - * / |
Day (of week) (曜日) | 1 ~ 7 または SUN ~ SAT | - * ? / L # |
Year (年) (省略可能) | 空白、1970 ~ 2199 | - * / |
値の指定に使用する以下の特殊文字があります。
文字 | 指定する値 | 注意書き |
* | すべての値。 | 分フィールドの * は毎分を意味します。 |
? | 日および曜日フィールドで使用すると、値を指定しません。 | ? はどちらかのフィールドで使用します。 |
- | 範囲。 | 時フィールドの 10-12 は、スクリプトが 10 時、11 時、および 12 時 (正午) に実行されることを意味します。 |
, | 追加の値。 | 曜日フィールドに "MON,WED,FRI" と入力すると、スクリプトは月曜日、水曜日、および金曜日のみで実行されます。 |
/ | 増分。 | 秒フィールドの 0/15 は、0、15、30、および 45 秒を意味します。「/」の前に * を追加すると、0 が開始秒であることを意味します。式内の各フィールドで、一連の数値をオン/オフに設定できます。秒および分の数値範囲は 0 ~ 59 です。 |
# | 曜日。 | 曜日フィールドの 6#3 は、第 3 金曜日 (6 番目の曜日は金曜日、#3 は月の第 3 金曜日) を意味します。たとえば、 #5 と指定して、その曜日の 5 回目がない場合、CRON ジョブは起動しません。# を使用すると、曜日フィールドの式は 1 つだけにできます。 |
L | 月または週の最終日。 | L は月の最終日を意味します。曜日フィールドで使用すると、 7 または SAT を意味します。曜日フィールドで他の値の後ろに使用すると、月の最終曜日を意味します。たとえば、 6L は月の最終金曜日になります。月の最終日からのオフセットも指定できます。L-3 は月の最終日の 3 日前を意味します。値のリストや範囲に L は使用しません。 |
W | 指定日直近の平日 (Mon ~ Fri)。 | 15W と指定すると、CRON ジョブは月の 15 日に最も近い平日に起動します。15 日が土曜日の場合は、14 日の金曜日に起動します。15 日が日曜日の場合は、16 日の月曜日に起動します。指定できるのは、1 日だけです (日の範囲やリストは使用できません)。 |
CRON の例
以下は、CRON 式の例です。
- 実行頻度 (1 回のみ) を 2018 年 12 月 18 日の 16 時 25 分に指定:
0 25 16 18 DEC ? 2018
- 実行頻度を毎日午後 12 時 (正午) に指定:
0 0 12 * * ?
- 実行頻度を平日毎晩午後 11 時に指定:
0 0 23 ? * MON-FRI
- 実行頻度を毎日午前 10 時 15 分に指定:
0 15 10 * * ?
- 実行頻度を毎週月曜、火曜、水曜、木曜および金曜の午前 10 時 15 分に指定:
0 15 10 ? * MON-FRI
- 実行頻度を毎月 1 日の午後 12 時 (正午) に指定:
0 0 12 1 1/1 ? *
- 実行頻度を平日の午前 8 時から午後 5 時まで毎時間に指定:
0 0 8-17 ? * MON-FRI