以下是Filebeat采集CentOS日志的实用技巧:
精准配置日志路径
paths: - /var/log/*.log
,或通过exclude_files
排除不需要的文件(如.gz
压缩文件)。/var/log/nginx/
)时,优先使用filestream
输入类型(Filebeat 7.0+更高效)。优化多行日志处理
multiline.pattern
匹配日志起始行,合并多行事件,避免拆分导致分析错误。例如:multiline.pattern: '^\['
multiline.match: after
提升传输效率
output.elasticsearch.bulk_max_size
(如2048),减少网络请求次数。queue.mem.events
和queue.mem.flush.min_events
控制内存队列大小,平衡内存与吞吐量。资源与性能调优
max_concurrent_files
控制同时读取的文件数,避免资源争抢。system
),在配置中禁用以减少开销。scan_frequency
(如10s
)控制文件扫描间隔,降低CPU负载。安全与可靠性增强
keystore
存储敏感信息(如Elasticsearch密码),避免明文配置。filebeat.registry
跟踪文件读取状态,确保重启后不重复采集或丢失数据。logrotate
实现日志分割,避免单个文件过大影响采集效率。日志分析与可视化
fields
添加自定义标签(如environment: production
),便于分类检索。参考来源: