【问题标题】:Cannot turn Elasticsearch dynamic mapping on无法开启 Elasticsearch 动态映射
【发布时间】:2017-06-21 15:47:18
【问题描述】:

我用

禁用了动态映射
curl -XPUT 'localhost:9200/_template/template_all?pretty' -H 'Content-Type: application/json' -d' {  "template": "*",  "order":0,  "settings": {    "index.mapper.dynamic": false   }}'

我想用

重新打开它
curl -XPUT 'localhost:9200/_template/template_all?pretty' -H 'Content-Type: application/json' -d' {  "template": "*",  "order":0,  "settings": {    "index.mapper.dynamic": true   }}'

它已经确认它是真的,但是当我尝试让 logstash 向它发送信息时,在 logstash 错误日志中我得到了回复-

"reason"=>"trying to auto create mapping, but dynamic mapping is disabled"

如何真正重新打开动态映射?

【问题讨论】:

    标签: elasticsearch dynamic field logstash mappings


    【解决方案1】:

    看起来 logstash 的索引是使用旧模板创建的(在更新模板之前)。因为当您更新模板时,只有新索引才会更新映射和设置。

    检查索引是否存在:

    curl -XGET 'localhost:9200/LOGSTASH_INDEX_NAME_HERE'
    

    如果索引存在并且您可以删除此索引 - 执行此操作。在此之后,logstash 将尝试发送某些内容 - 将使用新映射创建索引。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-30
      • 1970-01-01
      • 1970-01-01
      • 2014-05-28
      • 2021-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多