geolocation - 在 Elastic 中添加地理点
问题描述
我使用 ELK 和 filebeat。我发送了很多带有不同字段的日志。
日志存储配置:
input {
beats {
port => 5044
include_codec_tag => false
}
}
filter {
if [type] == "json" {
json {
source => "message"
target => "msg"
}
mutate {
remove_field => ["msg.ecs.version", "ecs.version", "@version"]
}
}
if [type] != "json" {
grok {
match => {
message => ["time=\"%{TIMESTAMP_ISO8601:time}\""]
}
}
date {
match => [ "time", "YYYY-MM-dd'T'HH:mm:ssZZ"]
target => "time"
}
}
}
output {
elasticsearch {
hosts => ["elasticsearch:9200"]
sniffing => true
manage_template => false
index => "%{[source][project]}-%{[source][application]}-%{+YYYY.MM.dd}"
}
}
我的一些消息包含位置
{
"location": {
"lat": 11.11,
"lon": 22.22
}
}
在弹性中,我可以看到我的位置(msg.location.lat
和msg.location.lon
),但我不知道如何将我的位置转换为 geo_point。据我了解,当前索引映射是由 logstash 插件或默认模板通过弹性搜索创建的。我应该写什么以及在哪里使用我的位置作为geo_point?
解决方案
推荐阅读
- javascript - 将自定义范围滑块划分为多个部分
- angular - 传入 MatAutoComplete 的 ng-content 不显示传入的选项
- python - 将递增的整数值分配给变量列表,而无需计算变量的数量
- flutter - Flutter中的ListView动态排序
- amazon-web-services - AWS EC2 实例状态检查正常,但服务器已消失
- javascript - html2canvas 呈现空白图像
- amazon-web-services - 使用 Spring Boot 连接到 AWS Aurora Serverless
- reactjs - 监听传入 url 时反应钩子依赖
- r - 如何更改 R LCMM 中的参考类别
- scala - IntelliJ + Scalafmt:不正确的文档字符串缩进