从Kafka Connect FileStreamSourceTask中读取许多文件

时间:2016-10-11 22:41:45

标签: apache-kafka apache-kafka-connect

我正在Kafka中阅读1个日志文件,并创建一个主题。这是成功的。要读取此文件,我正在编辑文件 config / connect-file-source.properties ,并根据Kafka Quickstart(http://kafka.apache.org/quickstart#quickstart_kafkaconnect)的步骤7进行编辑。

但是,现在,我想阅读很多文件。在 config / connect-file-source.properties 文件中,我使用模式编辑了变量 file ,例如: 文件=的/ etc /日志/存档 .log中* 因为我想读取目录日志的所有文件,模式为 archive * .log 。但是,这条线不起作用。

使用文件 config / connect-file-source.properties 实现使用模式读取文件的最佳形式是什么?

1 个答案:

答案 0 :(得分:4)

config/connect-file-source.properties

源类是FileStreamSource,它使用任务类作为FileStreamSourceTask

它使用FileInputStream读取文件,因此无法一次打开多个文件。 (通过传递目录名称或正则表达式模式..)

您应该实施自己的Source& SourceTask类,或使用支持此功能的现有类,例如kafka-connect-spooldir