2016-05-22 3 views
0

私は木場の時間マッチングの問題に直面しています。私のログファイルは古いタイムスタンプを持っていますが、ログファイルを解析すると@timestampはログファイルの元の時刻ではなく現在のタイムスタンプを取得します。私は正規表現を使用してmytimestampフィールドに格納するタイムスタンプと一致するようにGROKを使用しています私のログファイルのタイムスタンプに相当する木場タイムスタンプを設定してください

2015-12-25 17:39:45+0000 [SSHChannel session (0) on SSHServicessh-connection on HoneyPotTransport,21438,220.166.50.228] Closing TTYLog: log/tty/20151225-173944-319eb90f.log 

:ここ

は私のログファイルのエントリの例です。

grok { 

    match => ["message", "(?<mytimestamp>%{YEAR:year}-%{MONTHNUM:month}-%{MONTHDAY:day} %{TIME:time}%{ISO8601_TIMEZONE})"] 

}

私は、ログファイルのタイムスタンプを使用kibana作るために日付フィルタとのマッチングしています。

#Matches with timestamp 
    date { 
      match => [ "mytimestamp" , "yyyy-MM-dd HH:mm:ss" ] 
     } 

私はstackoverflowの上の古い質問のいくつかを読んで、それに基づいて自分の問題を解決しようとしたが、私はこの中でいくつかの重要なことをしないのですね。

答えて

0

日付フィルタが正しくありません。 mytimestampにはタイムゾーンが含まれています。したがって、日付フィルタは:

date { 
    match => [ "mytimestamp" , "yyyy-MM-dd HH:mm:ssZ" ] # <= Z must be added 
} 
です。
関連する問題