2016-05-11 15 views
0

私はログファイルを解析するためにカスタムgrokパターンを使用していますが、何をするにしても、常に私には_grokparsefailure例外があります。Logstash '_grokparsefailure'問題

しかし、それはhttps://grokdebug.herokuapp.com/

で完璧に動作マイカスタムパターンファイルは次の場所にあり、

C:\ Users \ユーザーユーザー名\プロジェクト\ Logstash \ビン\パターン

ファイル名:mylogpattern

LogLevel [I|V|D|M|W|E|A|F] 
    MODULE \b\w+\b|------ 
    MESSAGEID (?:[+-]?(?:[0-9]+))|---- 
    SUBMODULE (.*?:) 
    MESSAGE (.*)|(.*?:)|(.*\s*?:) 

マイLogst

input{ 
    beats{ 
     host => "192.168.56.1" 
     port => 7088 
     congestion_threshold => 200 
    } 
} 
filter { 
    if [type] == "MyLog"{ 
     grok{ 
      patterns_dir => ["C:\Users\Username\projects\Logstash\logstash\bin\patterns"] 
      match => { "message" => "%{YEAR:Year}%{MONTHNUM:Month}%{MONTHDAY:Day} %{HOUR:Hour}%{MINUTE:Minute}%{SECOND:Second} %{LogLevel:LogVerbosity} %{MODULE:MODULENAME}%{SPACE}%{MESSAGEID:MESSAGEID} %{SUBMODULE:SUBMODULE} %{MESSAGE:MESSAGE}" } 
      add_field => [ "received_at", "%{@timestamp}" ] 
      add_field => [ "received_from", "%{host}" ] 
     } 
    } 
} 
output { 
    elasticsearch { 
     hosts => ["http://localhost:9200"] 
     manage_template => false 
     index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}" 
     document_type => "%{[@metadata][type]}" 
    } 
} 

ログファイルのサンプル::

20160509 115108 I GEN 0000 ConnectionHandler.reconnect:DBへ を再接続が行われた灰設定ファイルは次のようになります。

20160509 115108 I GEN 0000 84.1.3.1000012:DBへの再接続は でした。

grokデバッガではうまく動作しますが、解析中に何とか失敗しています。

tags:beats_input_codec_plain_applied, _grokparsefailure 

誰かが私に助けてください、間違っていますか?

EDIT 1:

私が見ることができるが、最初の数秒間、ログが解析されてきています。しかし、その後、それはエラーを投げている。

すべてのログは本質的に同じフォーマットに従います。また、長いメッセージ用にGREEDYDATAフィルタを追加しました。これを正常に解析できます。私はまだ木場の解析ログを見ることができます。

ログカウントだけが本当に高く、ログファイルの間にも連続した空白行があります。

これらの空白行も解析しますか?

+0

注意あなたの設定 'C:\ Users \ Username \ projects \ Logstash \ logstash \ bin \ patterns'にあるものよりも、それは単なるコピー/ペーストエラーですか? – Val

+1

はい、空白行を解析しようとしている可能性があります –

答えて

0

私はあなたのGROKのpaterns_dir

に間違いはこの1つを試していると思う:\ Users \ユーザーユーザー名\プロジェクト\ Logstash \ビン\のpatterns`が異なっている:あなたは `Cに言及パスがあることpatterns_dir => "./patterns"