You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于Kafka Connect(spooldir)添加自定义键及多文件处理顺序的问询

Kafka Connect Spooldir 常见问题解答

1. 能否为同一文件的消息添加自定义键(如文件名)标记来源?

完全可以,分两种场景实现:

  • 仅在消息值中标记文件名:直接配置连接器的filename.field参数,指定一个字段名(例如source_filename),连接器会自动将当前处理的文件名插入到每条消息的value对应字段中。
  • 将文件名设为消息键:借助Kafka Connect的InsertField转换器,把文件名插入到消息的键结构中。示例配置片段:
transforms=addFileKey
transforms.addFileKey.type=org.apache.kafka.connect.transforms.InsertField$Key
transforms.addFileKey.field=filename
# 需启用filename.field确保连接器能获取文件名变量
filename.field=source_filename

配置后,每条消息的键会包含filename字段,值为当前处理的文件名。

2. 未处理目录存在多个文件时,是否会逐个处理且不混合消息?

默认情况下是串行逐个处理,主题流中不会混合不同文件的消息。
Spooldir连接器默认按文件的修改时间排序(可通过file.sort.order配置改为按文件名排序),处理完一个文件后(会将文件移动到已处理目录,或根据cleanup.policy配置进行标记/删除),才会启动下一个文件的处理。即便修改file.max.wait.ms参数让连接器提前处理新文件,同一文件的消息也会连续出现在主题中,不同文件的消息只会按处理顺序分段出现,不会出现消息交叉混合的情况。

内容的提问来源于stack exchange,提问作者AndCode

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 00:52:16