我正在開發一個logstash管道。我正在使用 geoip 過濾器。查看日志時,我可以看到 location.lat 和 location.lon,兩者都是浮動的,但我沒有看到 geoPoint 型別
我的管道過濾器
geoip {
id => "f5_bigip_ltm_src_geo"
source => "[clientip]"
#fields => [ "city_name", "continent_code", "country_name", "latitude", "longitude", "location", "postal_code", "region_name", "isp", "timezone" ]
cache_size => "4096"
#tag_on_failure => ["_geoip_failure_ltm"]
}
生成的欄位:

uj5u.com熱心網友回復:
Logstash 不支持geo_point資料型別。您必須在 Elasticsearch中使用映射。當 ECS 兼容性被禁用(過去是默認設定)時,geoip 過濾器的默認目標是 [geoip],并且彈性搜索輸出的默認模板將該欄位的映射設定為 geo_point。logstash 會將 geoip 欄位作為 JSON 物件發送到 elasticsearch { "geoip": { "location": { "lat": 41.12, "lon": -71.34 } }。這是 elasticsearch 將轉換為 geo_point 的幾種格式之一,前提是有一個映射告訴它這樣做。
啟用 ECS 兼容性后,目標會有所不同,但您仍需要在 elasticsearch 中進行映射。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/504069.html
