私はCSVにlatitude
とlongitude
のCSVファイルを持っていますが、Logstash 2.3.3でgeopoint
オブジェクトを作成しようとしています。木場4.5.1。 Kibanaでデータを可視化する際LogstashでCSV(緯度と経度の列)からジオポイントのオブジェクトを作成する
はしかし、私はlocation.lat
とlocation.lon
、種類float
ないタイプgeopoint
のlocation
の両方を参照してください。
私は一般的にELKには新しく、これは私を狂っています。特に、私が探している情報のほとんどが古くなっているからです。
私はこのようなルックスを使用してい.conf
ファイル:
input {
file {
path => "C:/file.csv"
start_position => "beginning"
}
}
filter {
csv {
separator => ","
columns => ["longitude","latitude"]
}
mutate { convert => {"latitude" => "float"} }
mutate { convert => {"longitude" => "float"} }
mutate { rename => {"latitude" => "[location][lat]"} }
mutate { rename => {"longitude" => "[location][lon]"} }
mutate { convert => { "[location]" => "float" } }
}
output {
elasticsearch {
template => "...\elasticsearch-template.json"
template_overwrite => true
action => "index"
hosts => "localhost"
index => "testindex1"
workers => 1
}
stdout {}
}
私は(elasticsearch-template.json
)を指定していますテンプレートファイルは以下の通りです:
{
"template" : "logstash-*",
"settings" : {
"index.refresh_interval" : "5s"
},
"mappings" : {
"_default_" : {
"_all" : {"enabled" : true, "omit_norms" : true},
"dynamic_templates" : [ {
"message_field" : {
"match" : "message",
"match_mapping_type" : "string",
"mapping" : {
"type" : "string", "index" : "analyzed", "omit_norms" : true,
"fielddata" : { "format" : "disabled" }
}
}
}, {
"string_fields" : {
"match" : "*",
"match_mapping_type" : "string",
"mapping" : {
"type" : "string", "index" : "analyzed", "omit_norms" : true,
"fielddata" : { "format" : "disabled" },
"fields" : {
"raw" : {"type": "string", "index" : "not_analyzed", "ignore_above" : 256}
}
}
}
} ],
"properties" : {
"@timestamp": { "type": "date" },
"@version": { "type": "string", "index": "not_analyzed" },
"geoip" : {
"dynamic": true,
"properties" : {
"ip": { "type": "ip" },
"location" : { "type" : "geo_point" },
"latitude" : { "type" : "float" },
"longitude" : { "type" : "float" }
}
},
"location" : { "type": "geo_point" }
}
}
}
}
誰も私を助けることができる場合、または私が間違っていることについていくつかの洞察を与えてください、私は非常に感謝します。また、これは私と同じボートにいるすべての人に役立つと確信しています。
私はそれを解決し、現在は完全に機能しています。テンプレートでタイプlogstash-*
のインデックスを検索しましたが、testindex1
を使用していました。インデックスをlogstash-%{+dd.MM.YYYY}
に変更しました。
に持ってマッピングを含むされていることを確認する必要があり、あなたがしている何の目的に反し、最後の 'mutate'を削除する必要があります達成しようとしている。また、 'testindex1'マッピングが' elasticsearch-template.json'ファイルにあるマッピングを忠実に含んでいることを確認できますか? – Val
あなたの返事をありがとう、問題は確かに 'testindex1'マッピングでした。 – naranjja
@val彼女はそれを受け入れるために回答として投稿するべきです。それは間違いなく問題です。 – pickypg