Kafka-connect elasticsearch用于索引的自动小写主题名称

时间:2019-02-14 13:11:50

标签: elasticsearch apache-kafka apache-kafka-connect

我正在使用 elasticsearch sink kafka-connector 将来自多个kafka主题的消息索引到elasticsearch。 我有关于camelCase命名的主题,但是无法更改。因此,在启动ES接收器连接器时,它不会索引任何内容,因为elaticsearch的非小写索引名称存在问题。

我知道我可以使用topic.index.map属性将主题名称手动转换为索引。
topic.index.map=myTopic1:mytopic1, myTopic2:mytopic2,...

是否有一种方法可以自动将转换为小写??我有数十个主题可以转换,我怀疑很快就会转换成一百个主题。

2 个答案:

答案 0 :(得分:1)

发现自5.1起,如果未为该主题指定映射,则它们会自动执行此操作。
from here

final String indexOverride = topicToIndexMap.get(topic);
String index = indexOverride != null ? indexOverride : topic.toLowerCase();

有关详细信息,请参见this commit

答案 1 :(得分:1)

从Elasticsearch接收器连接器的最新版本开始,此操作会自动完成。解决此问题的PR是https://github.com/confluentinc/kafka-connect-elasticsearch/pull/251