このクロンビルダが何をしているか
Cron の文法がコンパクトですが間違えるのは簡単です。0 0 * * 1 は月曜日か日曜日ですか?*/15は0から始まるのか?このビルダーでは暗記する代わりにクリックして表現を作ることができます。各フィールド (秒、分、時間、月の日、月、週の日) のために every、interval、specific値または rangeを選択し、表現、人間に読み取れる説明と 次の10回の実行を即座に更新します。クラシックなUnix cron、秒付き6フィールドのcron、Quartz (SpringとJavaスケジューラーで使用) とKubernetes CronJobをサポートしている。
使い方
- Unix、秒数、クォーツ、またはKubernetes。
- 各フィールドでモードを選択します。特定の値を選択するにはチップをクリックします。または"Mから始まるすべてのN"を設定します。
- 記述文と次の実行リストをチェックしてください。サーバーが見るように実行します。
- 表現をコピーする。既存の式を入力に貼り付けてビルダーに読み込むこともできます
バリアントの違い
- **Unix/crontab:**5フィールド、最初の1分。週7日07で,0と7は両方とも日曜日です。
- 秒で: ノード-クロンや多くのライブラリで使用される、秒先の6つのフィールド。
- **クォーツ:**秒先、年末に選択年、週の日 17 日曜日 = 1 で、月日または週日の1 は
?でなければならない。LとWと#をサポートします。 - **Kubernetes CronJob:**標準5フィールド;タイムゾーンは
spec.timeZone(Kubernetes 1.27+) で設定されている.そうでなければコントローラの現地時間が適用される。YAMLのスニペットを生成します。
共通の罠
- Unix cron で月曜日と週日が制限されている場合、タスクは どちらか が一致するときに実行されます。
*/15は"作業が最後に実行されてから15分後"ではなく",0分,15分,30分,45分"という意味です- 夏令間の変更は、現地時間13時から3時までの間をスキップまたは繰り返すことができます。重要な作業を UTC でスケジュールする。
- 多くのホストされたスケジューラー (GitHub Actions、Vercel Cron) は常に UTC を使用します。