Digdagのスケジュール設定


Digdagではcronのように定期的にジョブを実行したり、指定した時間内に処理が終わらなければい警告を出すことができます。

🤔 schedule:指定した時間にジョブ実行

timezone: Asia/Tokyo
schedule:
minutes_interval>: 1
+current_date:
sh>: echo `date`
+echo_hello:
sh>: echo hello

実行スケジュールの設定はschedule:配下に次のように記述できます。

設定 説明
daily>: HH:MM:SS 毎日HH:MM:SSにジョブを実行
hourly>: MM:SS 毎時間MM:SSにジョブを実行
weekly>: DDD,HH:MM:SS 毎週DDD曜日のHH:MM:SSにジョブを実行
monthly>: D,HH:MM:SS 毎月D日のHH:MM:SSにジョブを実行
minutes_interval>: MM MM分毎にジョブを実行
cron>: 42 4 1 * * クーロン形式でスケジュールを指定して実行

設定されているスケジューラのステータス確認は次のコマンドできます。

digdag check

🏀 sla:一定時間内に終わらなければ警告

sla:で一定時間に処理が完了しなければ通知などの特定の処理を行うことができます。

指定時間までに終了しなければ警告

time 時:分:秒で指定した時間までに終了しなければ、特定の処理(通知など)を行うことができます。

# 7:20までに終わらなければ警告
sla:
time: 07:20:00
+notice:
sh>: notice.sh

一定期間内に終了しなければ警告

duration 時:分:秒で指定した時間以内に処理が完了しなければ、特定の処理(通知など)を行うことができます。

# 20分以内に終わらなければ警告
sla:
duration: 00:20:00
+notice:
sh>: notice.sh

🐮 参考リンク

📚 おすすめの書籍