13

grok の解析に問題があります。ElasticSearch/Kibana では、一致する行に _grokparsefailure というタグが付いています。

これが私のlogstash構成です:

input { 
    file { 
     type => logfile 
     path => ["/var/log/mylog.log"] 
    } 
  } 
filter { 
    if [type] == "logfile" 
    { 
      mutate {
      gsub => ["message","\"","'"]
      }  

    grok 
        { match => { "message" => "L %{DATE} - %{TIME}: " } } 
    } 
} 

output { 
   elasticsearch { host => localhost port => 9300 } 
}

一致させようとしている行/パターン: L 2014 年 8 月 2 日 - 22:55:49: ログ ファイルが閉じられました:「完了」

http://grokdebug.herokuapp.com/でデバッガーを試してみましたが、正常に動作し、パターンが正しく一致しました。

解析したい行には二重引用符が含まれている可能性があり、grok がそれらを処理およびエスケープする方法に問題がある可能性があることを読みました。そのため、問題を回避するために " を ' に置き換えて変異させようとしましたが、うまくいきませんでした。

何か案は ?これをデバッグするにはどうすればよいですか?

ありがとう

4

1 に答える 1