My ELK setup goes like :
Filebeats --> Logstash(ingest nodes) --> Elasticsearch ( master + Datanodes ) --> Kibana
Recently we are observing a huge amount of delay in logfile ingestion ( 4 ~ 5 hr) . From the capacity perspective we have added enough horsepower ( large-machines: 10+ ingestnodes, 15+ datanodes ) . Per day total log size reaches upto 900gb. Multiple applications generating huge amount of logs.
Note- on a daily basis around 100+ logfiles are generated on a single server, each of 500mb size.
Our filebeat configuration is as below. Please suggest if anything can be modified or added to take care of this performance issue.
filebeat.prospectors:
paths:
- /<log_path>/application*.log
fields:
level: debug
review: 1
json.keys_under_root: true
json.overwrite_keys: true
harvester_buffer_size: 16384
scan_frequency: 5s
document_type: <document_type_name>
registry_file: .filebeat
spool_size: 20480
tail_files: false
idle_timeout: 5s
input_type: log
max_backoff: 10s
max_bytes: 10485760
logging:
files:
keepfiles: 5
name: filebeat.log
path: /var/log/filebeat-logs
rotateeverybytes: 10485760
level: info
to_files: true
to_syslog: false
output.logstash:
hosts:
- "VIP-address:port"