Flume - spoolign目录源 - 摄取子目录

时间:2018-04-19 03:21:55

标签: hdfs flume-ng

我目前正在使用Flume 1.7。配置假脱机目录源。我启用了recursiveDirectorySearch = true来查看子目录中的文件。

source.spoolDir = / tmp / test

并在/ tmp / test下,使用数据文件/tmp/test/data1/file.csv,/ tmp / test / data2 / file2.csv创建子目录。

我希望在HDFS接收路径中创建确切的子目录结构。

/sink/data1/file.csv /sink/data2/file2.csv

当我使用%{file}作为HDFS接收器文件路径时,我得到完整的绝对路径,%{basename}只给我文件名。我想从spooldir源路径中提取子目录结构。有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:0)

您可以使用fileHeaderfileHeaderKey属性,并在接收器配置中引用此标头变量以获取绝对路径。

https://flume.apache.org/FlumeUserGuide.html#spooling-directory-source