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