問題タブ [logstash-file]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
logstash - logstash でファイルを読み取る順序が異なるようにする
降順で書き込まれた複数のログ ファイルがあります。つまり、xyz.log.5 の内容は、ログ xyz.log.4 の内容の前に書き込まれます。ログ ファイルの数は不明です。
だから、ワイルドカードを使ってファイルを読んでいます
しかし、これはファイルを昇順で読んでいます。ログには複数のファイルにまたがる時間ベースのイベントが含まれており、経過フィルターを使用して時間間隔を計算しているため、降順で読み取ることが重要です。そのため、現在、読み取り順序が異なるため、時間間隔が正しくありません。
logstash を強制的に降順で読み取る方法はありますか?
file - Logstash File Input がファイル変更後にイベントを出力しない
ファイルから読み取り、各イベントをコンソール (またはファイル) に出力しようとしています。ファイルに追加して、これを Logstash で取得し、パイプラインを繰り返すことができるようにしたいと考えています。ただし、Logstash は、ファイルが変更されたことを認識しているにもかかわらず、パイプラインを一度だけ読み取って実行するようです。
OS X Yosemite で開発しています。
これが私のLogStash構成です
ログは次のとおりです(また、sudoで試してみましたが、運がありません):
ファイル (この場合は testFile) を変更した後、これは表示されますが、他には何も表示されません:
また、クラッシュなどはしていないようです。ファイルが変更されたことがわかりますが、その機能を実行して出力しません。
logstash - Logstash -- 複数の行を含む場合がある log4net.log のイベントを区切ります
これは、log4net から生成された典型的なログ ファイルです。
したがって、このログ ファイルは、logstash ファイル入力プラグインによって読み取られます。
デフォルトでは、delimiter
in 構成は です\n
。これは、各行がイベントであることを意味します。
しかし、上記のログ ファイルでは、1 つのイベントに対して複数の行が存在する可能性があることがわかります。(ERROR や FAULT など)
イベントを正しく区切るようにLogstashを構成する方法は?
のように複数の区切り文字を設定できると思います\nINFO
\nDEBUG
\nERROR
\nFAULT
。しかし、ドキュメントには、区切り文字は 1 つしか存在できないと書かれています。
amazon-web-services - Amazon S3 バケットからログを読み取るように logstash を構成する
Amazon S3 バケットで生成されたログを読み取るように logstash を設定しようとしましたが、成功しませんでした。以下は詳細です:
- ec2 インスタンスに logstash をインストールしました
- ログはすべて s3 バケット内の gz ファイルです
- conf ファイルは次のようになります。
logstash - logstash で動的にネストされたハッシュにデータを追加する
ネストされたハッシュの一部に値を入れたいのですが、上流のフィルターに応じてその部分に名前を付けます。これは、現在 20 以上の着信イベント タイプのそれぞれが、logstash ファイルに 18 行のこのような独自のセクションを持っているため、全体のコード サイズをリファクタリングして削減するためです (ただし、現在 %{detail_part} ビットはハードコーディングされています)。
上記は「OtherThing」にハードコードされています。以下には変数がありますが、機能しません。
上記 (非動作コード) では、detail_part が上流のフィルターで "OtherThing" のような文字列値に設定されています。これは現在コンパイルおよび実行されていますが、XML は出力されていないため、これらのステートメントの結果としてハッシュに何も設定されていないと思います。
Rubyコードを埋め込んで実行できることはわかっていますが、できるだけ簡単な方法が欲しいです。このプロセスの出力は XML になるため、この種のネストされたハッシュを使用する必要があります。
これは Logstash で可能ですか?
java - logstash が予期せず停止しました
ログを処理するために、redis アーキテクチャを使用して logstash をセットアップしました。私が整理した方法は次のとおりです。
logstash ---> redis ---> logstash ---> elasticsearch
しかし、発生した問題は、約 125 万件のログを解析した後に Java 例外がスローされることです。
私のlogstash.err
ログファイルでは、例外は次のように表示されます
この例外は、logstash がファイルを開閉できないためにスローされる可能性があると思います。では、このエラーを修正するにはどうすればよいでしょうか? 最初の logstash サーバーがログを送信するように入力構成を設定する方法は次のとおりです。
出力の送信方法は次のようになります。
redis がインストールされている logstash サーバーのログにエラーはありません。
java - Logstash の Java フィルター
Ruby でコードを記述できるようにする Logstash 用の Ruby フィルターがどのように存在するかご存知ですか。通常、次のように構成ファイルに含まれています。
これで、フィルターに含めたい 2 つの Jar ファイルができました。これにより、これらの Jar ファイルで行った操作に従って入力を処理できるようになります。ただし、ルビ コードに Jar ファイルを含めることは (明らかに) できません。私は解決策を探していました。