filebeat报错:Harvester could not be started on exist file

  • 问题描述:
    harvester_limit: 10000
    close_inactive: 5m
    scan_frequency: 10s
    采集10000个小文件,五分钟左右又写入了10000个小文件,此时原先开启的10000个harvester由于超过close_inactive关闭,再开启新的10000个harvester来采集新增的10000个文件,但是几秒之后原先的10000个文件也在请求启动harvester,导致harvester资源不够,报以下错误:
    Harvester could not be started on exist file:xxx.1.log, Err: Harvester limit reached

  • 问题表面原因:
    Err: Harvester limit reached
    如果配置了input的harvester_limit,如果需要采集的文件数多于harvester_limit,会导致报此错误,从filebeat的角度上看这是个error,但从使用者的角度看更像一个warning。即使filebeat报了这个错误,但仍然会继续尝试为这些文件创建harvester。

  • 解决方法:调大harvester_limit的值

  • 导致问题的真实原因:
    Filebeat使用换行符来检测事件的结束。 如果将行逐渐添加到正在采集的文件中,则在最后一行之后需要换行符,否则Filebeat将不会读取文件的最后一行。由于我采集的1w个文件结尾都没有换行符,filebeat并没有采集完整个文件,registrar中记录的offset只到倒数第二行,当close_inactive超时关闭后,又到了scan_frequency的时间,input去check文件以及registrar中的offset,发现该文件还没采集完,则又会为它启动harvester

  • 解决方法:在文件末尾加上换行符

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值