Kafka版本: 2.12-2.1.1
我创建了一个非常简单的示例,通过使用以下命令创建源和接收器连接器:
bin\windows\connect-standalone.bat config\connect-standalone.properties config\connect-file-source.properties config\connect-file-sink.properties源文件名: text_2.txt
接收器文件名: test.sink_2.txt
使用了一个名为"connect-test-2“的主题,我在PowerShell中创建了一个使用者来显示结果。
它第一次工作就很完美。然而,在我重新启动我的机器并重新启动所有的东西之后。我发现有些短信不见了。
例如,当我在test_2.txt文件中键入下面的字符并按如下方式保存时:
HAHAHA..
missing again
some text are missing
I am able to enter text
first letter is missing
testing testing. 结果窗口(使用者)和接收器文件显示如下:


正如你所看到的,一些文本丢失了,我无法找出为什么会发生这种情况。有什么建议吗?
添加了以下信息
connect-file-source.properties
name=local-file-source
connector.class=FileStreamSource
tasks.max=1
file=test_2.txt
topic=connect-test-2connect-file-sink.properties
name=local-file-sink
connector.class=FileStreamSink
tasks.max=1
file=test.sink_2.txt
topics=connect-test-2发布于 2019-03-14 11:52:05
我认为奇怪的行为是由您修改接收器文件(text_2.txt)的方式引起的。
停止连接器后如何应用更改:
FileStreamSource根据文件中的位置跟踪更改。您在独立模式下使用Kafka,所以当前位置是用/tmp/connect.offsets文件编写的。
如果使用编辑器修改源文件,则文件的全部内容已经更改。但是,FileStreamSource只检查大小是否有更改和轮询字符,这些字符在文件中的偏移量比连接器上次处理的要大。
应仅通过在文件末尾添加新字符来修改源文件。
https://stackoverflow.com/questions/55157056
复制相似问题