filebeat系列-yml文件配置

通用配置项

tip:不受namespace限制,与filebeat.inputs同级

name

Beat的name,若未设置,取服务器的hostname值。经过处理后会输出到agent.name字段中,可以使用name组织所有使用同一个Beat处理的数据

tags

可选项,值是一个list,用于添加各种属性标记

fields

可选项,当需要向output中输出额外的属性描述时使用,值可以是 标量, arrays, dictionaries, 或其他嵌套类型

fields_under_root

将fields内的属性设置为top level,如果fields内的属性和另一个top level中的属性有冲突,另一个将会被覆盖,可选值为true和false

processors

类似于logstash的filter部分,主要做些简单的数据处理,参考https://www.elastic.co/guide/en/beats/filebeat/current/filtering-and-enhancing-data.html

全局配置项

在filebeat命名空间下,通常设置是 filebeat.xxx.xxx

filebeat.registry.path:xxxx   

这里的xxxx是相对于data.path而言的,即  {path.data}/xxxx

filebeat.registry.flush:0s 

控制registry里的内容何时写入到文件中

默认是0s,通俗讲就是每个event被发布成功后,会立即写入一条类似位移的记录到registry;如果设置是n s(n>0),则发布成功后n秒才写入,

0s可以保证立即写入,如果filebeat down掉了,位移不会出问题,但是会影响进程的性能;

ns情形,down掉的话可能会出现已经发布出去的event,位移没有记下导致重启后重复读取,但是可以提高进程处理的性能

shutdown_timeout

filebeat关闭时的延时时间,这个延时主要针对events  的发布状态来讲,默认是关闭的,不关心当前是否还有尚在发布的events

如果设置延时,则会在延时的时间后才shutdown

进程文件路径设置

主要设置filebeat在运行中从哪里找其对应的文件,命名空间为  path

path.home

path.data------常用

path.logs------常用

path.config

以上配置均可用对应的命令行参数覆盖,即如果使用命令行参数指定,文件中配置的该项会被忽略,但是不会被修改

配置的值通常用绝对路径,不用相对路径

其他预研成果

一个yml的inputs中可以配置多个type

只允许一个output(官网说"Only a single output may be defined"说的有点模棱两可,试了多个不生效,但是可以在output里取字段值达到输出到多个目的地的要求)

filebeat中配置的fields,在logstash中获取:%{[fields][添加的字段名]}

如何输出ip:

首先在服务器环境变量里配置SERVERIP:127.0.0.0
然后增加fields属性的配置   

fields: 
  ip: 10.192.78.24
  testIp: ${SERVERIP}

 

posted @ 2020-06-05 15:16  鼠标的博客  阅读(2126)  评论(0编辑  收藏  举报