我已经在我的机器上安装了ELK堆栈。 Kibana在5.2.1中的版本,Elastic版本是5.2.1。所以基本上一切都是最新的。 但现在我接到警告。“映射冲突!” Kibana错误
“映射冲突!2字段被定义为与这个模式匹配的索引中的几种类型(字符串,整数等),您仍然可以在Kibana的部分区域使用这些冲突字段,但它们会不可用于需要Kibana知道其类型的函数。更正此问题将需要重新索引数据。“
并且在这两个领域是“geoip.coordinates”和“geoip.location”
我搜索对谷歌的解决方案,并得到了结果,如“重新索引的数据”。但我是新来的ELK和不知道如何重新索引它
这里是我的template.json文件,
{
"mappings": {
"_default_": {
"_all": {
"enabled": true,
"norms": {
"enabled": false
}
},
"dynamic_templates": [
{
"template1": {
"mapping": {
"doc_values": true,
"ignore_above": 1024,
"index": "not_analyzed",
"type": "{dynamic_type}"
},
"match": "*"
}
}
],
"properties": {
"@timestamp": {
"type": "date"
},
"message": {
"type": "string",
"index": "analyzed"
},
"offset": {
"type": "long",
"doc_values": true
},
"geoip" : {
"type" : "object",
"dynamic": true,
"properties" : {
"location" : { "type" : "geo_point" },
"coordinates" : { "type" : "geo_point" }
}
}
}
}
},
"settings": {
"index.refresh_interval": "5s"
},
"template": "filebeat-*"
}
和我logstash.conf文件的输出部分,
output {
elasticsearch {
hosts => ["localhost:9200"]
sniffing => true
manage_template => false
index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}"
document_type => "%{[@metadata][type]}"
}
}
我不知道该怎么解决。任何帮助将不胜感激
这很有可能是你有几个'filebeat- *'索引,其中之一,'geoip.location'和'geoip.coordinates'字段没有被声明为'geo_point',而是作为一个字符串。也许你当时没有安装模板。可能? – Val
那么我该如何解决这个问题? –
你有多少个索引? – Val