当前位置: 首页 > 知识库问答 >
问题:

ELK - Kibana不识别geo_point字段

谷梁向荣
2023-03-14

我正试图在基巴纳创建一个带有地理位置点的平铺地图。出于某种原因,当我尝试创建地图时,我在Kibana上收到以下消息:

没有兼容的字段:“日志”索引模式不包含以下任何字段类型:geo_point

我的设置:
Logstash (版本 2.3.1):

filter {
    grok {
        match => { 
            "message" => "MY PATTERN"
        }
    }

    geoip {
        source => "ip"
        target => "geoip"
        add_field => [ "location", "%{[geoip][latitude]}, %{[geoip][longitude]}" ] #added this extra field in case the nested field is the problem
    }
}
output {
    stdout { codec => rubydebug }
    elasticsearch { 
        hosts => ["localhost:9200"]
        index => "logs"
    }
}

当日志输入到达时,我可以看到它按照应该的方式解析它,并且我确实获得了给定IP的地理IP数据:

"geoip" => {
           "ip" => "XXX.XXX.XXX.XXX",
           "country_code2" => "XX",
           "country_code3" => "XXX",
            "country_name" => "XXXXXX",
          "continent_code" => "XX",
             "region_name" => "XX",
               "city_name" => "XXXXX",
                "latitude" => XX.0667,
               "longitude" => XX.766699999999986,
                "timezone" => "XXXXXX",
        "real_region_name" => "XXXXXX",
                "location" => [
            [0] XX.766699999999986,
            [1] XX.0667
        ]
    },
    "location" => "XX.0667, XX.766699999999986"

ElasticSearch(版本 2.3.1):
GET /logs/_mapping 返回:

{
   "logs": {
      "mappings": {
         "logs": {
            "properties": {
               "@timestamp": {
                  "type": "date",
                  "format": "strict_date_optional_time||epoch_millis"
               },
               .
               .
               .
               "geoip": {
                  "properties": {
                     .
                     .
                     .
                     "latitude": {
                        "type": "double"
                     },
                     "location": {
                        "type": "geo_point"
                     },
                     "longitude": {
                        "type": "double"
                     }
                  }
              },
              "location": {
                  "type": "geo_point"
               }
            }
         }
      }
   }
}

Kibana(版本4.5.0):
我确实看到了所有数据,一切似乎都很好。当我去“视野”的时候-

 No Compatible Fields: The "logs" index pattern does not contain any of the following field types: geo_point

即使我在elasticsearch映射中看到位置类型是geo_point。我错过了什么?

共有1个答案

龙令雪
2023-03-14

找到问题!我称索引为“日志”。将索引名更改为“logstash log”(需要logstash-*前缀),一切都开始运行!

 类似资料:
  • 基础知识 官网文档:https://www.elastic.co/guide/en/kibana/5.2/getting-started.html 案例 资料 <> <>

  • 我有一个用于使用elasticsearch GeopointSpring引导应用程序。当我保存弹性索引并创建geoDistanceQuery时,我得到了QueryShardException[未能找到geo_point字段[customer]]异常。 我的文件; 储存库; 保存和获取方法;

  • 问题内容: 我是ElasticSearch和Kibana的新手,无法让Kibana识别我的时间戳。 我有一个JSON文件,其中有很多数据,我希望使用Curl插入Elasticsearch中。这是JSON条目之一的示例。 我试图使用以下命令在Elasticsearch中创建索引: 然后,我尝试为时间戳设置适当的映射: //时间戳记格式,网址为http://www.elasticsearch.org/

  • 问题内容: 当我将用户作为查询字符串(使用$ http中的参数)传递给用户,并设置Web api方法以在uri中寻找用户时,一切都变得如桃子。但是当我按如下所示将其传递时,用户显示为null。我在这里想念什么? 角函数 网络API动作 问题答案: 试试:代替。 在asp.net api中, 整个请求主体 都绑定到一个参数。出于这个原因,你 不能有多个参数 用在动作方法的参数。只有一个=>,我们不需

  • 我从我的教授那里得到了这个样本溶液,但不知怎么的它不起作用。IntelliJ无法识别包。每堂课都是这样。当我悬停在它上面时,它说:“包名'spaceman.view.util'不对应于文件路径'view.util'”有没有人知道什么是错误的?我是一个完全的初学者,当谈到编码,所以很抱歉,如果这个问题是平庸的。 谢谢!!