第三篇 filebeat 配置
一.介绍
filebeat 的配置文件,默认的配置文件是调用filebeat.yml, 每一种安装,文件位置都不同,配置文件所在目录见文档: 目录结构
还有一个完整示例配置文件 filebeat.reference.yml
,其中显示了所有未弃用的选项。
由于可配置的节点很多,这里介绍重要节点:
1.1 input
要手动配置filebeat(则不是使用modules),可以在filebeat.yml中配置filebeat.inputs, 配置指定filebeat如何定位和处理input数据。
该列表是一个yaml数组,因此每个input都以(-)开头,可以指定多个输入,并且可以多指指定相同的input类型,例如:
filebeat.inputs: - type: log paths: - /var/log/system.log - /var/log/wifi.log - type: log paths: - "/var/log/apache2/*" fields: apache: true fields_under_root: true
不推荐使用log input的类型,请使用filestream input将日志文件发送到output。
1.2 下面是Log 类型配置选项, 按重点的讲
paths: 将被抓取和获取的基于glob的路径列表
encoding: 字符的数据的文件编码
exclude_lines: 排除的行匹配的正则表达式列表。默认情况下,不会删除任何行,空行被忽略。以下示例配置删除任何以DEG开头的:
filebeat.inputs: - type: log ... exclude_lines: ['^DBG']
include_lines: 包含的行匹配的正则表达式列表.以下示例配置包含ERR
or或WARN开头的
:
filebeat.inputs: - type: log ... include_lines: ['^ERR', '^WARN']
harvester_buffer_size:每个收集器在获取文件时使用的缓冲区大小(以字节为单位)。默认值为 16384。
max_bytes:单个日志消息可以拥有的最大字节数。之后的所有字节 max_bytes
都被丢弃而不发送。此设置对于可能变得很大的多行日志消息特别有用。默认值为 10MB (10485760)。
multiline:控制 Filebeat 如何处理跨越多行的日志消息的选项。Filebeat 收集的文件可能包含跨越多行文本的消息。例如,多行消息在包含 Java 堆栈跟踪的文件中很常见。为了正确处理这些多行事件,您需要multiline在文件中配置设置filebeat.yml以指定哪些行是单个事件的一部分。
exclude_files: Filebeat 忽略的文件匹配的正则表达式列表。默认情况下不排除任何文件.以下示例将 Filebeat 配置为忽略所有具有gz
扩展名的文件:
filebeat.inputs: - type: log ... exclude_files: ['\.gz$']
scan_frequency:Filebeat 在指定用于收集的路径中检查新文件的频率,默认设置为 10 秒。
tail_files:如果此选项设置为 true,Filebeat 会在每个文件的末尾而不是开头开始读取新文件。默认为false.
harvester_limit:该选项限制为一个input并行启动的收割机数量,默认为0 没有限制。
1.3 常用选项
所有input都支持以下配置选项
文章引用:日志输入