自动将在Kafka中创建的主题下沉到Elasticsearch

时间:2018-10-02 11:26:08

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

我有一些在kafka中创建的主题(test1,test2,test3),我想在创建时使它们陷入弹性。我尝试了topic.regex,但它仅为已经存在的主题创建索引。动态创建新主题时,如何将其添加到索引中?

这是我用于kafka-sink的连接器配置:

{
    "name": "elastic-sink-test-regex",
    "config": {
        "connector.class": "io.confluent.connect.elasticsearch.ElasticsearchSinkConnector",
        "tasks.max": "1",
        "topics.regex": "test[0-9]+",
        "type.name": "kafka-connect",
        "connection.url": "http://192.168.0.188:9200",
        "key.ignore": "true",
        "schema.ignore": "true",
        "schema.enable": "false",
        "batch.size": "100",
        "flush.timeout.ms": "100000",
        "max.buffered.records": "10000",
        "max.retries": "10",
        "retry.backoff.ms": "1000",
        "max.in.flight.requests": "3",
        "is.timebased.indexed": "False",
        "time.index": "at"
    }
}

1 个答案:

答案 0 :(得分:0)

接收器连接器在重新启动该连接器(或发生计划的重新平衡)之前不会读取新主题。您可以运行Kafka Stream来读取新主题中的消息,并将其放入类似结果的主题中。接收器连接器从类似结果的主题中读取。

要保存“邮件-主题”匹配项,可以使用Kafka记录标题。

  

确保它符合您的要求!