1

ELK スタックを本番環境に正常にセットアップしました。また、Kibana サーバーでログ (ログは構造化されていません) 出力を確認することもできます。

すべてがうまくいっています。しかし、唯一気になる点は、kibana 内のメッセージが、特定のログ ファイルに書き込まれる 1 行ごとに構造化されていることです。

質問:

そのため、ElasticSearch / Kibana / Logstashで1つのイベントと見なされる最大行数(logstashまたはエラスティック検索に送信する前のファイルビート)でログメッセージをマージ(行のクラブ)する方法はありますか.

注:ログ メッセージは構造化されていないことに注意してください (特定の正規表現パターンはありません)。だからこれは使えませ。しかし、max-linesアプローチを試しましたが、kibana のイベントは単一行のドキュメントを示しています。

例。

ログ (ログ ファイル) に次のようなエントリがある場合

Sending ... 0 .. 2016-02-17 13:20:13 +0530 
Sending ... 1 .. 2016-02-17 13:20:13 +0530 
Sending ... 2 .. 2016-02-17 13:20:14 +0530 
Sending ... 3 .. 2016-02-17 13:20:14 +0530 
Sending ... 4 .. 2016-02-17 13:20:14 +0530 
Sending ... 5 .. 2016-02-17 13:20:15 +0530 
Sending ... 6 .. 2016-02-17 13:20:15 +0530 
Sending ... 7 .. 2016-02-17 13:20:16 +0530 
Sending ... 8 .. 2016-02-17 13:20:16 +0530 
Sending ... 9 .. 2016-02-17 13:20:16 +0530 
Sending ... 10 .. 2016-02-17 13:20:17 +0530 
Sending ... 11 .. 2016-02-17 13:20:17 +0530 
Sending ... 12 .. 2016-02-17 13:20:18 +0530 
Sending ... 13 .. 2016-02-17 13:20:18 +0530 
Sending ... 14 .. 2016-02-17 13:20:18 +0530 
Sending ... 15 .. 2016-02-17 13:20:19 +0530 
Sending ... 16 .. 2016-02-17 13:20:19 +0530 
Sending ... 17 .. 2016-02-17 13:20:20 +0530 
Sending ... 18 .. 2016-02-17 13:20:20 +0530 
Sending ... 19 .. 2016-02-17 13:20:20 +0530 
Sending ... 20 .. 2016-02-17 13:20:21 +0530 
Sending ... 21 .. 2016-02-17 13:20:21 +0530 
Sending ... 22 .. 2016-02-17 13:20:22 +0530 
Sending ... 23 .. 2016-02-17 13:20:22 +0530 
Sending ... 24 .. 2016-02-17 13:20:22 +0530 
Sending ... 25 .. 2016-02-17 13:20:23 +0530 
Sending ... 26 .. 2016-02-17 13:20:23 +0530 
Sending ... 27 .. 2016-02-17 13:20:24 +0530 
Sending ... 28 .. 2016-02-17 13:20:24 +0530 
Sending ... 29 .. 2016-02-17 13:20:24 +0530 
Sending ... 30 .. 2016-02-17 13:20:25 +0530 
Sending ... 31 .. 2016-02-17 13:20:25 +0530 
Sending ... 32 .. 2016-02-17 13:20:26 +0530 
Sending ... 33 .. 2016-02-17 13:20:26 +0530 
Sending ... 34 .. 2016-02-17 13:20:26 +0530 
Sending ... 35 .. 2016-02-17 13:20:27 +0530 
Sending ... 36 .. 2016-02-17 13:20:27 +0530 
Sending ... 37 .. 2016-02-17 13:20:28 +0530 
Sending ... 38 .. 2016-02-17 13:20:28 +0530 
Sending ... 39 .. 2016-02-17 13:20:29 +0530 
Sending ... 40 .. 2016-02-17 13:20:29 +0530 
Sending ... 41 .. 2016-02-17 13:20:30 +0530

ファイル ビートでそれらをグループ化してほしい (ワード マージしたほうがよい)

(例: それらをマージする filebeat の構成。)

最終的に、logstash/elastic に送信されるイベントは次のようになります。

1 イベント (メッセージは ..)

Sending ... 0 .. 2016-02-17 13:20:13 +0530 
Sending ... 1 .. 2016-02-17 13:20:13 +0530 
Sending ... 2 .. 2016-02-17 13:20:14 +0530 
Sending ... 3 .. 2016-02-17 13:20:14 +0530 
Sending ... 4 .. 2016-02-17 13:20:14 +0530 
Sending ... 5 .. 2016-02-17 13:20:15 +0530 
Sending ... 6 .. 2016-02-17 13:20:15 +0530 
Sending ... 7 .. 2016-02-17 13:20:16 +0530 
Sending ... 8 .. 2016-02-17 13:20:16 +0530 
Sending ... 9 .. 2016-02-17 13:20:16 +0530 
Sending ... 10 .. 2016-02-17 13:20:17 +0530 
Sending ... 11 .. 2016-02-17 13:20:17 +0530 
Sending ... 12 .. 2016-02-17 13:20:18 +0530 
Sending ... 13 .. 2016-02-17 13:20:18 +0530 
Sending ... 14 .. 2016-02-17 13:20:18 +0530 
Sending ... 15 .. 2016-02-17 13:20:19 +0530 

2 イベント (メッセージは .. )

Sending ... 16 .. 2016-02-17 13:20:19 +0530 
Sending ... 17 .. 2016-02-17 13:20:20 +0530 
Sending ... 18 .. 2016-02-17 13:20:20 +0530 
Sending ... 19 .. 2016-02-17 13:20:20 +0530 
Sending ... 20 .. 2016-02-17 13:20:21 +0530 
Sending ... 21 .. 2016-02-17 13:20:21 +0530 
Sending ... 22 .. 2016-02-17 13:20:22 +0530 
Sending ... 23 .. 2016-02-17 13:20:22 +0530 
Sending ... 24 .. 2016-02-17 13:20:22 +0530 
Sending ... 25 .. 2016-02-17 13:20:23 +0530 
Sending ... 26 .. 2016-02-17 13:20:23 +0530 
Sending ... 27 .. 2016-02-17 13:20:24 +0530 
Sending ... 28 .. 2016-02-17 13:20:24 +0530 
Sending ... 29 .. 2016-02-17 13:20:24 +0530 
Sending ... 30 .. 2016-02-17 13:20:25 +0530 
Sending ... 31 .. 2016-02-17 13:20:25 +0530 
Sending ... 32 .. 2016-02-17 13:20:26 +0530 

等々 ...

しかし残念ながら、それは各行のイベントを作成するだけです. 添付のスクリーンショットを参照してください。

ここに画像の説明を入力

ここで、私の Filebeat 構成は次のようになります(ログは一般に構造化されていないため、ここでも正規表現を使用できません。上記のログは単なる例です。)

考え ?

注:ファイル ビート バージョン 1.1.0

4

1 に答える 1

2

間違った目的で filebeat multiline の max_lines を使用しています。

max_lines は、Elasticsearch/Logstash で複数行のイベントが確実にフラッシュされるようにするために使用されます ( Filebeat のドキュメント)。

これは、たとえば max_lines を 5 に設定した場合を意味します。そして、7 行の複数行イベントがあります。Filebeat は最初の 5 行のみを送信し、その後、複数行イベントのメモリをフラッシュして、2 番目のイベントの送信を開始します。

現時点では、Filebeat 1.1.0 では、あなたがやりたいことや方法は不可能です。ログファイルの不規則性を示すログファイルのサンプルをいつでも投稿できます。おそらく、私たち全員が一緒にパターンを見つけることができます ( Github issue )。

逆になんでやりたいの?

于 2016-05-13T09:21:33.917 に答える