filebeat常用配置文件总结

版权声明:此文章为许诗宇所写,如需转载,请写下转载文章的地址 https://blog.csdn.net/xushiyu1996818/article/details/84029395

filebeat配置文件例子

filebeat.prospectors:

- input_type: log
  tags: ["wap-accesslog-tags-include","www1"]
  ignore_older: 2h
  enabled: true
  paths: ["/root/logs/wap.*","/root/logs/wap_iv.*"]
  include_lines: ["^ERR", "^WARN"]
 
- input_type: log
  tags: ["wap-accesslog-tags-exclude","www1"]
  ignore_older: 2h
  enabled: true
  paths: ["/root/logs/wap.*","/root/logs/wap_iv.*"]
  exclude_lines: [".gz$"]
 
output.logstash:
  hosts: ["IP地址:5044"]
 
logging.level: info
logging.to_files: true
logging.to_syslog: false
logging.files:
path: /var/log/filebeat
name: mybeat.log

 
输入  
input_type:相当于一个输入的开始,每个文件可以有几个input和几个output,是指定Filebeat采集数据类型。指定文件的输入类型log(默认)或者stdin。
tags: 给Filebeat采集到的数据加上标签(让output的地方使用),可以有几个。

筛选
(以方便下一步的数据处理工具针对数据类型进行分类处理,如Logstash)
ignore_older: 如果启用此选项,Filebeat 将忽略在此属性指定时间之前修改的任何文件以及更新时间比此属性指定时间更长的文件。
paths: 指定采集的日志文件,可以支持通配符,可以有几个。
include_lines: 指定正则表达式,用来指定要匹配的行,在输入中匹配符合正则表达式列表的那些行,可以有几个。
exclude_lines: 指定正则表达式,用来指定不要匹配的行,在输入中排除符合正则表达式列表的那些行,可以有几个。
encoding:指定被监控的文件的编码类型,使用plain和utf-8都是可以处理中文日志的。

显示filebeat自身的日志
logging.level: info
logging.to_files: true
logging.to_syslog: false
logging.files:
path: /var/log/filebeat
name: mybeat.log
可以设置日志的level,路径,名字

不常用的:
fields:向输出的每一条日志添加额外的信息,比如“level:debug”,方便后续对日志进行分组统计。默认情况下,会在输出信息的fields子目录下以指定的新增fields建立子目录,例如fields.level。
fields_under_root:如果该选项设置为true,则新增fields成为顶级目录,而不是将其放在fields目录下。自定义的field会覆盖filebeat默认的field。
close_older:如果一个文件在某个时间段内没有发生过更新,则关闭监控的文件handle。默认1h,change只会在下一次scan才会被发现
force_close_files:Filebeat会在没有到达close_older之前一直保持文件的handle,如果在这个时间窗内删除文件会有问题,所以可以把force_close_files设置为true,只要filebeat检测到文件名字发生变化,就会关掉这个handle。
scan_frequency:Filebeat以多快的频率去prospector指定的目录下面检测文件更新(比如是否有新增文件),如果设置为0s,则Filebeat会尽可能快地感知更新(占用的CPU会变高)。默认是10s。
document_type:设定Elasticsearch输出时的document的type字段,也可以用来给日志进行分类。
harvester_buffer_size:每个harvester监控文件时,使用的buffer的大小。
max_bytes:日志文件中增加一行算一个日志事件,max_bytes限制在一次日志事件中最多上传的字节数,多出的字节会被丢弃。
multiline:适用于日志中每一条日志占据多行的情况,比如各种语言的报错信息调用栈。
tail_files:如果设置为true,Filebeat从文件尾开始监控文件新增内容,把新增的每一行文件作为一个事件依次发送,而不是从文件开始处重新发送所有内容。
backoff:Filebeat检测到某个文件到了EOF之后,每次等待多久再去检测文件是否有更新,默认为1s。
max_backoff:Filebeat检测到某个文件到了EOF之后,等待检测文件更新的最大时间,默认是10秒。
backoff_factor:定义到达max_backoff的速度,默认因子是2,到达max_backoff后,变成每次等待max_backoff那么长的时间才backoff一次,直到文件有更新才会重置为backoff。
spool_size:spooler的大小,spooler中的事件数量超过这个阈值的时候会清空发送出去(不论是否到达超时时间)。
idle_timeout:spooler的超时时间,如果到了超时时间,spooler也会清空发送出去(不论是否到达容量的阈值)。
registry_file:记录filebeat处理日志文件的位置的文件
config_dir:如果要在本配置文件中引入其他位置的配置文件,可以写在这里(需要写完整路径),但是只处理prospector的部分。
publish_async:是否采用异步发送模式(实验功能)。

输出
Filebeat可以指定输出源(如下一些简单配置的输出源配置):
输出到Logstash
output.logstash:
  hosts: ["localhost:5044"]
  (localhost为logstash所在的ip地址,可以改为192.168.1.152等)
  (5044位logstash监控的端口,需要与logstash的配置文件对应)
 
输出到File
output.file:
  path: "/tmp/filebeat"
  filename: filebeat
 
输出到控制台
output.console:
  pretty: true

猜你喜欢

转载自blog.csdn.net/xushiyu1996818/article/details/84029395