filebeat

filebeat如何工作?
主要组件:input和harvesters(采集器进程)

  • harvesters - 采集器
    一个文件启动一个harvesters,一行一行读取单个文件的内容,并把这些内容发送到输出(output).

    harvester负责打开和关闭这个文件,这就意味着在harvester运行时文件描述符保持打开状态。

    在harvester正在读取文件内容的时候,文件被删除或者重命名了,那么Filebeat会续读这个文件。这就有一个问题了,就是只要负责这个文件的harvester没用关闭,那么磁盘空间就不会释放。默认情况下,Filebeat保存文件打开直到close_inactive到达.

  • input
    负责找到所有需要读取的日志,然后每个日志文件启动一个harvesters.

filebeat如何保持文件状态?

  • data目录树结构

      data
      ├── meta.json
      └── registry
      	  └── filebeat
      	  	  ├── data.json   # 存储每个文件inode和最新偏移量(json格式)
      	  	  └── meta.json
    
  • filebeat保持文件状态
    filebeat每个刷新时间会保存文件读取状态待注册文件(registry)。状态用于记住harveters读取最新偏移量,并确保日志行被发送到输出。

    遇到的问题?
    1.输出异常:filebeat会追踪发送的最后一行,只要输出再次可用继续读取文件.

filebeat如何保证至少投递一次?
filebeat会将时间的投递状态保存在注册表中,在没有收到输出确认事件时,会尝试继续发送事件,直到输出确认收到事件为止.

如果filebeat在发送事件过程关闭了,则在关闭前它不会等待输出确认所有事件。因此当filebeat启动时,发送到输出的事件有可能再次发送。可以设置shutdown_timeout选项,将filebeat配置为关闭之前等待特定时间.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值