不为失败找理由,要为成功找方法。

filebeat跨文件多行合并

Beats | 作者 lengxiaopang | 发布于2019年12月16日 | 阅读数:2435

利用filebeat收集日志,如果内容分跨了两个文件, 一半在这个文件一半在另一个文件这种情况应该如何处理,现在测试的另外的一半文件的内容会被单独成一个event, 我想利用多行合并将其中一个文件追加到上一个event末尾,请问有解决方法么?
已邀请:

tacsklet - 公司有用到es

赞同来自:

换个思路吧,最好不要指望文件读取的有序。
匿名用户

匿名用户

赞同来自:

这种 如果beats 本身不支持,那谁也没办法, 
首先我们分析一下原因:
1,当文件到达末尾,beats读取每一行,进行判断是否生成Event,如果是最后一行,beats 怎么分辨是否 生成一个新的Event 还是等待呢?
 
我想有两种方式,
1,可以判断文件是否正在被打开占用,如果占用
2,beats等待一段时间,比如30秒
 
如果文件一直打开,那可能等候30s,直接结束当前Event,
如果文件关闭,那可能直接打开下一个符合的文件,获取第一行判断,是否应该生成新的Event。
 
这个东西想要做好,还是非常的复杂的,没那么简单的。如果beats 本身不支持,那谁都没办法。

要回复问题请先登录注册