プログラムログを制御するのにELKを使用しています。 FileBeatの設定では、の異なるから1秒ごとに更新されるファイルが含まれています(prodのマシンでのみ毎秒更新されます)。 ログファイルが古くなるまで削除されず、ログファイルの使用が停止されます(名前は変更されません)。 最近、私たちは、プロダクトマシンのコンフィギュレーションファイル(.yml)の最後のパスのログがKibanaに表示されないことを確認しました。FileBeat収穫の問題
調査の結果、FileBeatがファイルに貼り付けられていることが最初のパスであり、最後のファイルに到達しないようになったことがわかりました。最後の2つのパスの場所を先頭に置き換えると、FileBeatはそこにすべてのログを登録し、後でそれらを収集し始めました。
私はFileBeat設定のドキュメントを調べました。クローズ*オプションclose_option_configが良いアイデアのようです。しかし、私はまだそれを手に入れることができませんでした。なぜなら、scan_frequencyオプションの推奨時間は何であるのか分かりません(今のところデフォルトは10秒です)。
私はこの問題を解決するため取得するために何を行うことができますいくつかの意見をここにしたい?15秒にclose_timeoutを変更しようとscan_frequency
2メートルに close_timeout: 15s
scan_frequency: 2m
私はここに設定を書いて、何か参考にして、他に何かを見逃しているかどうかを見ました。
私filebeat.yml:長い調査の後(変更前)
filebeat:
# List of prospectors to fetch data.
prospectors:
# Each - is a prospector. Below are the prospector specific configurations
-
paths:
- D:\logs\*\path1\a_*_Pri_app.log.txt
input_type: log
document_type: type1
multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}'
multiline.negate: true
multiline.match: after
-
paths:
- D:\logs\*\path2\b_*_Paths_app.log.txt
input_type: log
document_type: type2
multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}'
multiline.negate: true
multiline.match: after
-
paths:
- D:\logs\*\path3\c_*_R_app.log.txt
input_type: log
document_type: path3
multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}'
multiline.negate: true
multiline.match: after
-
paths:
- D:\logs\*\path4\d_*_d_app.log.txt
- C:\logs\*\path4\d_*_d_app.log.txt
input_type: log
document_type: path4
multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}'
multiline.negate: true
multiline.match: after
.....上記
と同じpaths:
- D:\logs\*\path27\S.Coordinator_Z.*.log*
- C:\logs\*\path27\S.Coordinator_Z*.log*
input_type: log
document_type: path27
multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}'
multiline.negate: true
multiline.match: after
-
paths:
- D:\logs\*\path28\d_*_Tr_app.log.txt
- C:\logs\*\path28\d_*_Tr_app.log.txt
input_type: log
document_type: path28
multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}'
multiline.negate: true
multiline.match: after
-
paths:
- D:\logs\*\R1_Output\R*\pid_*_rr_*
input_type: log
document_type: path29
multiline.pattern: '<\?xml version="1\.0" encoding="UTF-8"\?>'
multiline.negate: true
multiline.match: after
-
paths:
- D:\logs\*\R2_Output\R*\pid_*_rr_*
input_type: log
document_type: path30
multiline.pattern: '<\?xml version="1\.0" encoding="UTF-8"\?>'
multiline.negate: true
multiline.match: after
registry_file: "C:/ProgramData/filebeat/registry"