通过Flume假脱机目录源将文件名插入kafka

时间:2015-11-12 12:52:25

标签: apache-kafka flume

我正在使用spooldir作为Flume源并沉入kafka,无论如何我可以将内容和文件名传输到kafka。 例如,filename是test.txt,内容是hello world,需要显示 你好,世界 的test.txt

1 个答案:

答案 0 :(得分:0)

某些来源允许添加文件名作为使用输入数据创建的Flume事件的标题;这是欺骗者来源的情况。

有些接收器允许配置串行器用于写入数据,例如HDFS one;在这种情况下,I've read存在header_and_text序列化程序(从未对其进行过测试)。尽管如此,Kafka源并没有公开这样做的参数。

所以,恕我直言,您的选择是两个:

  1. 配置spooldir以添加有关文件名的上述标题,并开发一个自定义拦截器,负责使用这样的标头值修改数据。拦截器是在源的输出处运行的代码片段,它们拦截"事件并在它们被有效地放入Flume频道之前修改它们。
  2. 通过添加有关文件名的第一个数据行,修改发送到spooldir源的数据。