• 文字サイズ変更
  • S
  • M
  • L

FAQのNo.から検索


  • No : 35900
  • 公開日時 : 2024/05/20 07:30
  • 印刷
DSCloudDSServista

【DataSpider】日単位のスケジュールトリガーの実行時間が、翌日のトリガー実行開始時間まで掛かってしまった場合はどうなりますか

例えば毎日9時に実行しているスケジュールトリガーが、翌日の10時に実行終了した場合、
翌日9時に発火する予定のスケジュールトリガーの動作はどうなりますか。
カテゴリー : 

回答

インターバルの [スクリプト実行中であっても、一定間隔で実行する] 以外のスケジュールトリガーは、
実行が完了した時点で次回のトリガー実行開始日時を取得します。
 
そしてその時点で既に実行開始日時を過ぎていればすぐに実行される仕様です。
 
上記仕様のため、一つ前のトリガーが実行中の場合は、次のトリガーは実行されませんが、
予定通り発火できなかった次のトリガーがキャンセルされることはなく、予定より遅れて発火します。
 
なお、実行開始日時の算出方法は、日単位のスケジュールトリガーの場合は以下です。
 直前のトリガーの実行開始予定日時+ 1日
 ※実際に実行を開始した日時ではなく、予定日時で計算されます。
 
このため、日単位のスケジュールトリガーの動作としては以下のようになります。
 
 【例】
  2022/03/17 09:00 スケジュールトリガー実行開始(予定通り)
  
  2022/03/18 10:00 スケジュールトリガー実行終了
   →次回トリガー実行開始日時取得
    2022/03/18 09:00(2022/03/17 09:00 + 1日)
    →既に開始日時を過ぎているため即時実行
  
  2022/03/18 10:00 スケジュールトリガー実行開始(予定より 1時間遅れ)
  
  2022/03/19 10:00 スケジュールトリガー実行終了
   →次回トリガー実行開始日時取得
    2022/03/19 09:00(2022/03/18 09:00 + 1日)
    →既に開始日時を過ぎているため即時実行
  
  2022/03/19 10:00 スケジュールトリガー実行開始(予定より 1時間遅れ)
  
  2022/03/19 10:05 スケジュールトリガー実行終了
   →次回トリガー実行開始日時算出
    2022/03/20 09:00(2022/03/19 09:00 + 1日)
    →まだ開始日時ではないため待機
  
  2022/03/20 09:00 スケジュールトリガー実行開始(予定通り)
  
  2022/03/20 09:05 スケジュールトリガー実行終了
目的別で検索
仕様確認

このFAQに関してのご意見をお聞かせ下さい。