スケジュールを本番に入れる前に
フィールドが1つずれるだけで、「毎週月曜の9:00」が「月曜日の毎分」になってしまいます。crontab、GitHub Actionsのワークフロー、KubernetesのCronJob、クラウドのスケジューラーの式を貼り付ければ、その意味を表す文と、次の5回、10回、25回の実行日時がわかるので、深夜3時に実行されてしまう前にミスに気づけます。
cron式を貼り付けると、意味をわかりやすい言葉で表示し、次の実行日時を手元のタイムゾーンかUTCで一覧にします。
フィールドが1つずれるだけで、「毎週月曜の9:00」が「月曜日の毎分」になってしまいます。crontab、GitHub Actionsのワークフロー、KubernetesのCronJob、クラウドのスケジューラーの式を貼り付ければ、その意味を表す文と、次の5回、10回、25回の実行日時がわかるので、深夜3時に実行されてしまう前にミスに気づけます。
標準の5フィールド(分、時、日、月、曜日)、Quartzやnode-cronのように先頭に置く秒のフィールド(省略可)、@hourly、@daily、@weekly、@monthly、@yearlyのマクロ、範囲、リスト、間隔(*/15)、さらにL(月末)、W(最も近い平日)、#(1#2=第2月曜日)に対応しています。多くのサーバーはcronをUTCで動かしているので、両方の表示を見比べましょう。日本時間(JST)はUTCより9時間進んでいます。
cron式を入力するか、プリセットを押して始めます。フィールドの内訳で、各部分の意味がわかります。
式をわかりやすい言葉の説明に変換するので、意図したとおりの動きになっているか確かめられます。
次の5回、10回、25回の実行予定を表示して、スケジュールが正しいかを確認できます。
cron式は、Unix・Linuxのシステム、CI/CDのパイプライン(GitHub Actions、GitLab CI)、クラウドのサービス(AWS CloudWatch、Google Cloud Scheduler)、タスクの自動化ツールで、くり返しのスケジュールを定義するのに使われています。
この解析ツールは、わかりにくいcronの構文を読める説明に変え、これからの実行日時を表示するので、スケジュールの確認やデバッグがかんたんになります。
かんたん・すばやいこのcron解析ツールは、すべてブラウザ内で動きます。データがサーバーに送られることはなく、解析はJavaScriptで手元で行われます。
スケジュールからは、システムの動き方がわかってしまいます。式はブラウザの中だけで解析されます。
ブラウザ内で完結cron式の解析について知っておきたいこと