2016-04-11 10 views
1

私はlogstashとgrokに新しいですし、パターンに関して質問があります。 私はApacheのエラーログ用のgrokパターンを作成しようとしています。 しかし、私は次の動作について少し混乱しています。GROKのLoglevelパターン

私はhttp://grokdebug.herokuapp.com/における根本的な一致を使用する場合:

%{LOGLEVEL:severity%{IPV4:clientip}%{GREEDYDATA:errormsg} 

を私は次のログスニペットの一致を取得していない:

[日4月10日午前九時28分01秒2016] [エラー] [クライアント111.11.111.111]ファイルは 存在しません:

/var/www/html/favicon.ico今私は%{LOGLEVEL:重症度を}実行する場合、すべてのパターンが働きますまたは%{IPV4:clientip}%{GREEDYDATA:errormsg}を別々にしてください。しかし、私はそれを一緒に試してみると、私は "一致しない"リターンを得る。

%{LOGLEVEL:severity}が残りのログを切り捨てるが、なぜそれができないのかがわかります。

誰かが私が間違っていることについて何か提案がありますか?

ありがとうございます。

答えて

3

すべてのアンカーされていない正規表現と同様に、マッチングを開始すると、文字列のすべてを一致させる必要があります。あなたのパターンでは、あなたのサンプルに存在するスペースや角括弧については説明していません。 (これはまた、 "重大度"の後のaの欠如がコピー&の貼り付けエラーであると仮定している)。