Though the Kibana tutorial works fine w/ the Tile Map, my data always gives me a 'no data found' error. The lat/longs are read in ok and the values are valid.
Below are the details:
The template seems simple enough:
curl -XPUT localhost:9200/_template/baby-names -d '
{
"template" : "baby-names",
"mappings" : {
"birth_data" : {
"dynamic_templates" : [ {
"string_fields" : {
"mapping" : {
"type" : "string", "index" : "not_analyzed", "omit_norms" : true
},
"match_mapping_type" : "string",
"match" : "*"
}
} ],
"_all": {
"enabled" : false
},
"properties" : {
"geo" : {
"properties" : {
"coordinates" : {
"type" : "geo_point"
}}}}}}}'
Also the logstash 'baby-names.conf' file seems straightforward:
input {
tcp {
port => 3333
} }
filter {
grok {
patterns_dir => "./patterns"
match => ["message", "%{TEXT_NO_COMMA:State},%{TEXT_NO_COMMA:Sex},%{NUMBER:year:int},%{TEXT_NO_COMMA:Name},%{NUMBER:NumBirths:int},%{NUMBER:latitude:float},%{NUMBER:longitude:float},%{TEXT_NO_COMMA:geohash}"]
}
mutate {
add_field => [logdate, "Jan 01 %{year}"]
}
mutate {
rename => {
"latitude" => "[geo][coordinates][lat]"
"longitude" => "[geo][coordinates][lon]"
}}
date {
match => ["logdate", "MMM dd YYYY"]
target => "@timestamp"
}}
output {
elasticsearch {
embedded => false
action => "index"
host => "localhost"
template_name => "baby-names"
index => "baby-names"
}}
Though the data looks good in Kibana with other graphs, the Tile Map always barfs. Any advice?
Thank you!