我有一个具有这种结构的json文件:
{"vhost": "8.8.8.8", "host": "8.8.8.8", "port": 80, "ip": "189.191.116.19", "host.latitude":"40.408599853515625","host.longitude":"-3.692199945449829"}
我有一个像这样的logstash配置文件:
input {
stdin {
type => "json"
}
}
filter{
json{
source => "message"
}
}
output {
stdout{}
}
我想转换json记录,以便在ES和Kibana中使用geo_point类型。根据官方文件 https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-geo-point-type.html纬度和经度字段必须采用以下格式:
"pin" : {
"location" : {
"lat" : 41.12,
"lon" : -71.34
}
}
我的问题是,如何从logstash转换为json输入,以便我可以使用geo_point?。我想我不能修改json结构本身,但也许我可以添加一个新的字段,其中包含geo_point类型所需的位置结构。
谢谢