flume taildir source 问题
问题背景:使用flume搜集日志目录下动态,实时生产的文件
其中log 目录下有子目录,按日期命名,然后子目录下的日志是每小时生成一个日志文件
现在打算使用flume采集log目录下的日志文件,实时读取,并传到kafka消息队列中去
问题描述:
source配置时,采用taildir 方式,但是不起作用,具体指定到子目录如/log/20170324/.*才起作用
但是生产上的日志目录是动态生成的,不可能写死目录
请问flume 使用什么方式能解决我现在的问题?
1.目录和文件动态变化
2.数据实时写入
或者是不是我配置错了? 谢谢 !
flume source配置如下:
agent.sources.s1.type = org.apache.flume.source.taildir.TaildirSource
agent.sources.s1.channels = c1
agent.sources.s1.positionFile = ./log/taildir_position.json
agent.sources.s1.filegroups = f1
agent.sources.s1.filegroups.f1 = /log/.*
agent.sources.s1.skipToEnd = true
agent.sources.s1.recursiveDirectorySearch = true
agent.sources.s1.yarnApplicationHeader = true
agent.sources.s1.yarnContainerHeader = true
agent.sources.s1.batchSize = 200 这个功能flume1.7已经实现了,要么楼主修改源码也可以实现。
更多可参考下面内容
Flume TaildirSource如何实现递归动态目录
http://www.aboutyun.com/forum.php?mod=viewthread&tid=21349
qcbb001 发表于 2017-3-24 14:35
这个功能flume1.7已经实现了,要么楼主修改源码也可以实现。
更多可参考下面内容
Flume TaildirSource如 ...
我就是按照这篇文章做的, 但是实际操作起来,flume1.7还是没法实现递归子目录监听实时变化的文件
它只能在固定目录下,监听下面文件的实时变化,不过这已经有很大的改进了,比execsource要强
页:
[1]