Splunkのcronの動作

公開日
2018-06-14
最終更新日
2018-06-14
バージョン
Splunk Enterprise 9.1.2
概要
Splunkではスケジュールアラートなどで、cronでの実行時刻を指定することができます。Splunkのcron動作はバージョンによって異なるため、実行時刻を指定する際はご注意ください。
参考情報
内容

バージョンごとの差異

7.2.1以前

Splunkのcron動作は、一般的なLinuxのcron動作と異なる点があります。

Linux:第3フィールドと第5フィールドがOR条件で動作します。
Splunk:第3フィールドと第5フィールドがAND条件で動作します。

例)0 9 15-21 * 1 の場合

(第1フィールド:分、第2フィールド:時、第3フィールド日、第4フィールド:月、第5フィールド:曜日)

  • Linux:
    15日〜21日 または 月曜日 と判断され、15日〜21日のAM9時と、毎週月曜日のAM9時に実行されます。
  • Splunk:
    15日〜21日 かつ 月曜日 と判断され、15日〜21日の月曜日のAM9時に実行されます。

7.2.2以降

Splunkのcron動作は、一般的なLinuxのcron動作と同じです。
Linux・Splunk:第3フィールドと第5フィールドがOR条件で動作します。

例)0 9 15-21 * 1 の場合

(第1フィールド:分、第2フィールド:時、第3フィールド日、第4フィールド:月、第5フィールド:曜日)

  • Splunk、Linux:
    5日〜21日 または 月曜日 と判断され、15日〜21日のAM9時と、毎週月曜日のAM9時に実行されます。

7.2.1以前と同じタイミングでアラートを実行する方法

7.2.1以前(7.0系、7.1系)のバージョンでスケジュールアラートのcronの実行時刻を「0 9 15-21 * 1 」のように設定していた場合、最新版へのバージョンアップ後にアラートの実行時刻が変わります。

バージョンアップ前と同様に毎月15日〜21日の月曜日のAM9時にアラートを実行する場合はアラートの設定を以下のように変更します。

手順

SplunkWebにログインします。
[設定]-[サーチ、レポート、アラート]画面に移動します。
対象アラートの編集画面を開き、サーチに判定条件を追加します。

<変更例>
・サーチ
(既存のサーチ文)

| eval daynum=strftime(now(),"%d"),
| eval weekday=strftime(now(),"%a"),
| eval isThirdMonday=if(weekday=="Mon" AND daynum>14 AND daynum<22,"true","false" )
| search isThirdMonday="true"

以上