うるう秒によるSplunk Enterpriseの動作への影響について

公開日
2015-06-22
最終更新日
2015-06-24
バージョン
Splunk Enterprise 6.2.1
概要
うるう秒によるSplunk Enterpriseの動作への影響について
参考情報
内容

うるう秒によるSplunk Enterpriseのサービスの停止などの影響はありません。

しかし、Splunk Enterpriseはうるう秒をタイムスタンプとして認識しません。タイムスタンプがうるう秒の場合に考えられる影響として、下記2つがあります。

  • タイムスタンプが認識できず、イベントが複数行になってしまう可能性があります。
  • タイムスタンプが実際のタイムスタンプと異なる値で認識されます。

1. について

まず、Splunkはデフォルトの設定では、イベント区切りをタイムスタンプとしています。

複数行を1イベントと設定している場合、区切り文字を明示的に指定しているため影響はありません。

1行1イベントでデータが出力されている場合、対象のデータ取り込み設定のソースタイプに対して、props.confに"SHOULD_LINEMERGE=false" という1行を1イベントと認識する設定※が明示的に定義されていないと、タイムスタンプが認識できず、イベントが複数行になってしまう可能性があります。

※「SHOULD_LINEMERGE=false」という設定は1行1イベントとして取り込む設定です。このデフォルトの値は「true」であり、またBREAK_ONLY_BEFORE_DATEという設定が「true」になっているため、タイムスタンプの前でイベントを区切ります。タイムスタンプが認識できない場合、1行はLINE_BREAKERという設定に定義されている正規表現によって判断されます。LINE_BREAKERのデフォルトの値は ([\r\n]+)です。設定の詳細は下記リンクをご参考ください。

2. について

Splunk Enterpriseが取り込んでいるログやデータに8:59:60秒(うるう秒)のように、"60"が表示されたタイムスタンプが出力された場合、Splunk Enterpriseは下記の動作をします。その後は、1.~4.の順で該当するものが適用され、処理されます。

  • Splunk Enterpriseがイベントのタイムスタンプ(日付+時間)を認識できない場合、同じソースの最新イベントと 同じタイムスタンプで認識します。
    例えば、2015年7月1日 8時59分60秒の前が59秒のイベントであれば、60秒のタイムスタンプは
    認識できないため、直前の2015年7月1日8時59分59秒として認識します。
  • Splunk Enterpriseの取り込み対象のログファイル等にイベントの時刻のみ(日付情報が無い)が含まれている場合、ログファイルのファイル名やソース名から日付の情報を適用します。
  • 上記2.に該当しない場合は、Splunk Enterpriseはファイルの更新日付をイベント取り込み時に適用します。
  • 上記のいずれの対応ができない場合、Splunk Enterpriseはイベント取り込み時のシステム時間を適用して取り込みます。

以上