简要结论:Filebeat 本身占用内存通常不高,在 CentOS 上一般几十 MB 到一百多 MB 左右,远小于 Logstash/Elasticsearch。但如果配置或使用不当,也可能出现内存偏高的情况。
Filebeat 是轻量级日志采集器(Go 编写):
对比:
例如:
paths:
- /var/log/**/*.log
✅ 建议:
exclude_filesmax_bytes 不限制读取缓冲✅ 建议:
max_bytes: 1048576
当:
Filebeat 会:
✅ 查看:
filebeat test output
journalctl -u filebeat
queue.mem:
events: 4096
maxbytes: 100mb
如果调得很高,会占内存。
✅ 一般默认即可。
✅ 建议升级到 7.17+ / 8.x 稳定版
ps -o pid,rss,cmd -C filebeat
或
top -p $(pidof filebeat)
RSS 单位 KB。
filebeat.inputs:
- type: log
paths:
- /var/log/nginx/*.log
exclude_files: ['.gz$']
max_bytes: 1MB
queue.mem:
events: 2048
maxbytes: 50mb
processors:
- drop_fields:
fields: ["agent.ephemeral_id"]
如果你愿意,可以贴一下:
filebeat.yml 配置ps 内存数据我可以帮你具体分析原因。