6

いくつかの Graylog2 サーバー ( graylog-server バージョン 1.3.4) を使用しています。大量のログ メッセージを受信するため、多くのメモリが必要になります。ログの保持期間を 1 週間に短縮しようとしています。1 週間より古いログ メッセージはすべて削除されます。ただし、構成ファイルでそれを行うための値を見つけることができません。
「max_time_per_index = 7d」値を使用しましたが、max_time_per_index は、そのインデックス内のメッセージではなく、ローテーションされて新しいインデックスが作成されるまで、インデックスの年齢を定義しているようです。
では、メッセージの保存期間を 1 週間に設定する最善の方法は何でしょうか? 私を助けてください。どうもありがとう。

4

3 に答える 3

7

これを実現する 1 つの方法は、インデックスを毎日ローテーションし、インデックスの最大数を 8 に保つことです。この方法では、常に 1 週​​間 + Elasticsearch クラスター内のログの現在の日付が保持されます。

elasticsearch_max_time_per_index = 1d
elasticsearch_max_number_of_indices = 8

Graylog のインテリジェントな時間範囲選択機能のおかげで、より多くのインデックスを使用し、ローテーション時間を短縮することで、検索パフォーマンスがさらに向上することに注意してください。たとえば、多くのデータがある場合、これにより高速な検索結果が得られるはずです。

elasticsearch_max_time_per_index = 12h
elasticsearch_max_number_of_indices = 16

インデックスの数を 15 に減らしても、1 週間分のデータを保持できます。

于 2016-05-26T19:54:53.090 に答える
3

graylog サーバーは次のように構成する必要があります。 elasticsearch_max_time_per_index = 1d elasticsearch_max_number_of_indices = 7 rotation_strategy: time 注意してください。戦略が使用される場合は時間でなければなりません。うまくいきました。

于 2016-05-30T10:28:41.997 に答える