当前位置:   article > 正文

日志采集之filebeat和flume

filebeat和flume

Filebeat(基于6.5版本)

概述

filebeat的由来

Logstash是ELKElasticSearch、Logstash、Kibana组件中的一个。这三个组件往往是配合使用的ES负责数据的存储和索引,Logstash负责数据采集和过滤转换,Kibana则负责图形界面处理;之后,这三个组件又先后被收购于Elastic.co公司名下

因为logstash是jvm跑的,资源消耗比较大,所以后来作者又用go写了一个功能较少但是资源消耗也小的轻量级logstash-forwarder因为es公司本身还收购了另一个开源项目packetbeat,而这个项目专门就是用go语言的,所以es公司干脆把logstash-forwarder的开发工作也合并到同一个团队,于是新的项目就叫filebeat了。

logstash 和filebeat都具有日志收集功能,filebeat更轻量,占用资源更少。filebeat可以发送到logstash,进一步进行日志清洗和过滤。

filebeat介绍

harvesters采集器

一个采集器的职责是一行行的读取一个文件的内容,并且发送内容到output。(A harvester is responsible for reading the content of a single file. The harvester reads each file, line by line, and sends the content to the output.

 

Inputs

input的职责是管理采集器并且发现所有的资源去读取他们(An input is responsible for managing the harvesters and finding all sources to read from.

当启动时,有1个或多个input去指定位置,为每一个文件启动一个收集器,收集器读取文件内容发送到libbeat,然后聚合event发送到output(When you start Filebeat, it starts one or more inputs that look in the locations you’ve specified for log data. For each log that Filebeat locates, Filebeat starts a harvester. Each harvester reads a single log for new content and sends the new log data to libbeat, which aggregates the events and sends the aggregated data to the output that you’ve configured for Filebeat.

总结:一个filebeat client可以有多个input,当程序启动时,会根据文件目前的读取状态来判断是需要启动harvesterharvester负责文件的打开和关闭,读取文件

 

具体实现

功能图:

流程图:

input

  1. 如何识别一个文件?

当文件重命名和移动时,依然可以读取这个文件。

对于每个input的文件,filebeat通过每个文件的元信息来识别文件,因为文件名和路径可能会改变,不会通过文件名等标识一个文件,filebeat保存文件的唯一标识符来识别一个文件,在Linux系统中,通过inode 存储文件的元信息)来进行识别。

文件句柄如何关闭?

为了实现的这种功能,当没有close_*配置时,会一直保存这个这个文件的hander,磁盘上的空间会保留。

 

Close_* 达到这些情况时,关闭hander。

close_inactive 以最后一次读取的日志时间为起点(即lastoffset),如果超过这个时间日志没有更新,则会关闭句柄。开始时间不是文件的修改时间。如果文件有更新,则在下一次scan时会再次被收集。

close_renamed 被重命名时,关闭句柄。默认是不会关闭的。

Close_removed 被删除时,关闭句柄

Close_eof 读完一个文件就关闭。用于读取存量不会更新的文件。

Close_timeout 一个收割机的生命周期时间

 

clean_* 删除文件的注册表文件信息

Clean_inactive 删除注册表文件。会在非活动期过后删除文件状态,对于每天生成大量新文件的非常有用。

<

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/192806?site
推荐阅读
相关标签
  

闽ICP备14008679号