如何禁用/删除elasticsearch mapping中的所有* .raw字段?

时间:2015-03-09 13:39:04

标签: elasticsearch mapping logstash logstash-forwarder

我想禁用所有" raw"由logstash-forwarder在Elasticsearch中创建的字段。所以如果我有一个字段作为" host" logstash-forwarder不会创建" host.raw"领域。但是我需要一个针对所有字符串字段的通用解决方案。

我的字符串字段为" not_analyzed"因此,原始字段没有意义,只有数据的副本。

我试图删除"字段"下面的映射的一部分,但它在第一个日志消息后添加回来。我能够实现的最接近的事情是添加以下映射,但仍然会创建空的原始字段:

curl -XPUT 'localhost:9200/myindex/' -d '{
    "mappings": {
        "_default_": {
          "dynamic_templates" : [ {
             "string_fields" : {
                "mapping" : {
                "index" : "not_analyzed",
                "type" : "string",
                "fields" : {
                   "raw" : {
                        "ignore_above" : 0,
                        "index" : "not_analyzed",
                        "type" : "string"
                    }
                }
              },
              "match" : "*",
              "match_mapping_type" : "string"
            }
          } ],

        "_all": { "enabled":  false }

        }
    }
}'

那么如何禁用这些字段呢?

0 个答案:

没有答案