Filebeat 是一个轻量级的日志收集器,用于将日志文件发送到各种输出目标,如 Elasticsearch 或 Logstash。在 CentOS 上,Filebeat 默认不会压缩日志文件,但你可以通过配置 Filebeat 的输出模块来实现日志压缩。
以下是在 CentOS 上配置 Filebeat 压缩日志的步骤:
/etc/filebeat/filebeat.yml
。使用文本编辑器打开,例如:sudo vi /etc/filebeat/filebeat.yml
filebeat.inputs
部分,找到你正在使用的输入模块(例如 filestream
或 log
),并确保启用了 scan_frequency
选项。这将使 Filebeat 定期扫描日志文件。filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
scan_frequency: 10s
output.elasticsearch
或 output.logstash
部分,启用 compress
选项。这将使 Filebeat 在发送日志到输出目标之前对其进行压缩。对于 Elasticsearch 输出:
output.elasticsearch:
hosts: ["localhost:9200"]
compress: true
对于 Logstash 输出:
output.logstash:
hosts: ["localhost:5044"]
compress: true
保存并关闭配置文件。
重新启动 Filebeat 以应用更改:
sudo systemctl restart filebeat
现在,Filebeat 将在发送日志到 Elasticsearch 或 Logstash 之前对其进行压缩。请注意,这可能会增加 CPU 使用率,因为 Filebeat 需要对日志进行压缩。