Confluenceのタスクスケジューリング設定における時刻の指定について
管理画面から行う自動バックアップとかのタスクのスケジューリング設定。
Scheduled Jobs - Confluence Latest - Atlassian Documentation
crontabによく似ているのですが、秒の指定ができたりとちょっと違う。
管理画面の編集でライブチェックができる
時刻設定を変更すると、直近で行われる10件の時刻がサンプルとして表示される。Invalidな設定にするとエラーメッセージがでるのでわかりやすい。
シンタックス
こんな感じ。
* * * * * * * - - - - - - - | | | | | | | | | | | | | +------- 年 | | | | | +-------- 曜日 | | | | +--------- 月 | | | +---------- 日 | | +----------- 時 | +----------- 分 +----------- 秒
crontabと同じで、
- カンマ区切りで複数指定
- */2とかで2の倍数指定(若干違うけど・・・・まぁだいたい)
- 1-4とかで1~4の範囲指定
ができる。
?指定
注意するところが、?の存在。これは、7つ指定しないといけないこのシンタックスで「無視する」という条件になる。無視するなら*で良いじゃんと思ったのだけど、?を使う。
これは、日付の指定において「日付指定か曜日指定」の際に必要になる。つまり、
- 曜日を指定 ・・・ 日付を?にする
- 日付を指定 ・・・ 曜日を?にする
というルールが必須になる。
例えば、下記は毎日0時に実行するということで、
0 0 0 * * ? *
下記は毎週日曜日の0時に実行するということになる。
0 0 0 ? * 1 *
曜日か日付かのどちらかを?にする必要がある。
省略可能
年だけは指定しなくてもよい。6つでOK。
曜日指定はSUNとかの文字表記でもOK
1・・・日曜日、2・・・月曜日なんだけど、SUN、MONでも大丈夫。