Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
<img src="//i.stack.imgur.com/RUiNP.png" height="16" width="18" alt="" class="sponsor tag img">elasticsearch 尝试使用kafka Connect在Elasticsearch中索引kafka主题_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Apache Kafka_Apache Kafka Connect - Fatal编程技术网 elasticsearch 尝试使用kafka Connect在Elasticsearch中索引kafka主题,elasticsearch,apache-kafka,apache-kafka-connect,elasticsearch,Apache Kafka,Apache Kafka Connect" /> elasticsearch 尝试使用kafka Connect在Elasticsearch中索引kafka主题,elasticsearch,apache-kafka,apache-kafka-connect,elasticsearch,Apache Kafka,Apache Kafka Connect" />

elasticsearch 尝试使用kafka Connect在Elasticsearch中索引kafka主题

elasticsearch 尝试使用kafka Connect在Elasticsearch中索引kafka主题,elasticsearch,apache-kafka,apache-kafka-connect,elasticsearch,Apache Kafka,Apache Kafka Connect,我想索引一个主题,从卡夫卡在avro到elasticsearch格式,但 我在识别时间戳字段时遇到问题 elasticsearch作为日期格式字段 我对连接器使用了以下配置 { "name": "es-sink-barchart-10", "config": { "connector.class": "io.confluent.connect.elasticsearch.ElasticsearchSinkConnector",

我想索引一个主题,从卡夫卡在avro到elasticsearch格式,但 我在识别时间戳字段时遇到问题 elasticsearch作为日期格式字段

我对连接器使用了以下配置

   {
          "name": "es-sink-barchart-10",
      "config": {
        "connector.class": "io.confluent.connect.elasticsearch.ElasticsearchSinkConnector",
        "value.converter": "io.confluent.connect.avro.AvroConverter",
        "key.converter": "io.confluent.connect.avro.AvroConverter",
        "key.converter.schema.registry.url": "http://localhost:8081",
        "value.converter.schema.registry.url": "http://localhost:8081",

        "connection.url": "http://localhost:9200",

        "type.name":"type.name=kafka-connect",

        "topics": "exchange_avro_01",

        "topic.index.map": "exchange_avro_01:exchange_barchart",

        "key.ignore": "true"
     }
    }
原始字段是bigint类型,我希望目标字段是日期类型,具有elasticsearch的任何有效格式。我定义了一个动态模板,试图用以下方式解决它:

curl -XPUT "http://localhost:9200/_template/kafkaconnect/" -H 'Content-Type: application/json' -d'
{
  "index_patterns": "exchange*",
  "settings": {
    "number_of_shards": 1,
    "number_of_replicas": 0
  },
  "mappings": {
    "kafka-connect": {
      "dynamic_templates": [
    {
          "dates": {
        "match_mapping_type": "long",
            "match": "TIME",
            "mapping": {
              "type": "date",
          "format": "yyyy-MM-dd HH:mm:ss"
            }
          }
        }
      ]
     ,
      "properties": {
          "CLOSE": {
            "type": "double"
          },
         .
         .
         .
        }
      }

    }
  }
}'
当我加载上面描述的连接器时,没有任何内容被索引到elasticsearch


有什么帮助吗?

如果你的消息来源是一个bigint,那么可能是一个epoch。如果这是一个时代,那么这就行不通了:

"mapping": {
      "type": "date",
      "format": "yyyy-MM-dd HH:mm:ss"
        }
因为您告诉Elasticsearch日期格式是
yyyy-MM-dd HH:MM:ss
(事实并非如此)

因此,请尝试以下方法(暂时省略您的自定义映射;先让它工作,然后再将其添加回):

另请参考:

elasticsearch没有索引


检查Kafka Connect worker日志和Elasticsearch日志是否有任何错误。

如何检查Kafka Connect worker日志和Elasticsearch日志?有关如何检查Connect日志的信息。如果您从命令行启动Elasticsearch,则它的日志将显示在标准输出上,如果不是,则显示在相应的日志文件夹中。这些解决方案似乎工作正常,但在性能上有很大的影响。还有其他方法可以改变它吗?如何在模式注册表中更新模式?
{
  "index_patterns": "exchange*",
  "settings": {
    "number_of_shards": 1,
    "number_of_replicas": 0
  },
  "mappings": {
    "kafka-connect": {
      "dynamic_templates": [
        {
          "dates": {
            "match": "TIME",
            "mapping": {
              "type": "date"
            } } } ] } } }