"error"=>{"type"=>"mapper_parsing_exception", "reason"=>"failed to parse", "caused_by"=>{"type"=>"illegal_state_exception", "reason"=>"Mixing up field types: class org.elasticsearch.index.mapper.core.StringFieldMapper$StringFieldType != class org.elasticsearch.index.mapper.geo.BaseGeoPointFieldMapper$GeoPointFieldType on field Coordinates"}}}}}
Mapping of geo_point is not working. If we remove the mapping, then it is loading into the elastic search with geo_point but without geo_point type.
Even in the documentation also it is written that it will accept the strings.
https://www.elastic.co/guide/en/elasticsearch/reference/current/geo-point.html
Logstash config file(only coordinates snippet):
----------Input snippet----------
mutate {
add_field => [ Coordinates, "%{Latitude},%{Longitude}" ]
}
----------Output snippet----------
elasticsearch {
document_type => "feature"
hosts => ["XXX"]
index => "abc"
manage_template => false
}
-----------Mapping--------------
curl -XPUT http://XXX:9200/abc -d'
{
"mappings": {
"sensorlogs" : {
"properties" : {
"Coordinates" : { "type":"geo_point"}
}
}
}
}'
Elasticsearch version: /opt/mapr/elasticsearch/elasticsearch-2.3.3
Logstash Version: logstash-5.1.2.rpm
Same Code is working fine with the below versions
**Elasticsearch version:**elasticsearch-5.1.2.rpm
Logstash Version: logstash-5.1.2.rpm