Scheduled Jobのタイムゾーンを設定しよう
決まった時間に、律儀に処理をしてくれるScheduled Jobって便利ですよね。
ただ、インスタンスのタイムゾーンによっては、Scheduled Jobが設定した時間に動いてくれないという事もあります。
Scheduled Jobにはタイムゾーンを設定するフィールドがある
デフォルトビューのフォームには表示されていませんが、実はScheduled Jobにはタイムゾーンを設定するためのフィールドがあります。
タイムゾーンが未設定の場合、インスタンスのデフォルトのタイムゾーンが利用される。
Scheduled Jobのタイムゾーンを設定せずに、ブランクとした場合、インスタンスのデフォルトのタイムゾーンが適用されます。
たとえば、インスタンスのデフォルトタイムゾーンがイギリス時間であれば、Scheduled Jobのタイムゾーンがブランクの場合、イギリス時間で動くことになります。
サマータイムという罠
なぜ、ここでタイムゾーンを注意しないといけないかというと、欧米にはサマータイムという概念がありますよね。これによって、ジョブの作動時間がずれてしまうことがあるんです。
たとえば、1月時点で日本時間7:30に動くスケジュールジョブを作るとします。この時イギリス時間(冬時間)との時差は9時間になるので、それぞれの時間では↓の様にScheduled Jobが動くことになります
(1月時点)
日本時間:07:30
イギリス時間:22:30
ここでサマータイムが始まり、イギリスの時間が1時間早まると、どうなるでしょうか。イギリス時間との時差が8時間になるので、↓の様に日本時間からみた時の実行時間が変わってしまうのです。
(夏時点)
日本時間:06:30←1時間早まる
イギリス時間:22:30←システムデフォルトの時間が優先される
Scheduled Jobのタイムゾーンは設定しよう
インスタンスのデフォルトタイムゾーンが海外の場合、サマータイムの影響を受けることがあるので、スケジュールジョブのタイムゾーンを個別で設定しましょう。
The world works with ServiceNow
この記事が気に入ったらサポートをしてみませんか?