Hi,
I've spent most of the day trying to nail down this problem. I have a conf file and a template set up for our firewall. It works well enough, logs are entering ES and I can use Kibana to query logs and display graphs. However, I also wanted to make use of Grafana but it's struggling to pull the same data that Kibana is managing to pull. This lead me to look into the logs again and I've found that the Elasticsearch log is kicking out repeated entries stating:
[2017-05-24T19:40:49,786][WARN ][o.e.d.i.m.StringFieldMapper$TypeParser] The [string] field is deprecated, please use [text] or [keyword] instead on [column56]
[2017-05-24T19:40:49,786][WARN ][o.e.d.i.m.StringFieldMapper$TypeParser] The [string] field is deprecated, please use [text] or [keyword] instead on [keyword]
I understand it's referencing 2 of the column headers in the GREEDYDATA but what I don't understand is why it's failing. I've amended the template file as much as I can to be compatible with the latest version of ES (the version I'm currently running) but I've clearly missed something. I have no reference to "string" in my json template other than for the match_mapping_type but I believe this to be correct. I've replaced them all the the newer keyword and text entries.
Would anyone mind giving my template a look over and point out where this error is being generated from?
{
"template" : "palo-firewall-*",
"settings" : {
"index.refresh_interval" : "5s"
},
"mappings" : {
"_default_" : {
"_all" : {"enabled" : true},
"dynamic_templates" : [ {
"message_field" : {
"match" : "message",
"match_mapping_type" : "string",
"mapping" : {
"type" "text", "index" : true, "omit_norms" : true
}
}
}, {
"strings" : {
"match" : "*",
"match_mapping_type" : "string",
"mapping" : {
"type" "text", "index" : true, "omit_norms" : true,
"fields" : {
"text" : {"type" "keyword", "index" : true, "ignore_above" : 256}
}
}
}
} ],
"properties" : {
"@version": { "type": "keyword", "index": true},
"geoip" : {
"type" : "object",
"dynamic": true,
"properties" : {
"location" : { "type" : "geo_point" }
}
},
"SourceGeo" : {
"type" : "object",
"dynamic": true,
"properties" : {
"location" : { "type" : "geo_point" }
}
},
"DestinationGeo" : {
"type" : "object",
"dynamic": true,
"properties" : {
"location" : { "type" : "geo_point" }
}
}
}
}
}
}
Thanks for your help.