Преобразование lat и lon в тип данных geo point в версии ELK 6.3 на ubuntu 14.04 - PullRequest
0 голосов
/ 04 июля 2018

Мы пытаемся поместить данные в эластичный поиск, используя файл .conf и .json (файл шаблона) в ELK версии 6.3. Изначально мы успешно поместили данные в версию ELK 4.x, используя файл шаблона, и смогли отобразить точки на карте. Но в новой версии, с / без использования файла шаблона, в Кибане лат и лон видятся только как число.

Как мы нажимаем lat, lon, чтобы он имел тип геопункта? Мы пытаемся передать данные с помощью файла конфигурации logstash.

Вот наш файл .conf:

[input
{
    file
        {
        path => "/home/ubuntu/file.csv"
        start_position => "beginning"
        }
}
filter {
    csv {
        separator => ","
        columns => \[
          "CASCADE",
          "Accessibility",
          "Sustainability",
          "CONNECTION_FAIL_per",
          "RRC_CONNECTION_ATTEMPT",     
               "eCSFB_to_CDMA1XRTT_Exe_Succ_Count",
          "eCSFB_Preparation_Success_Rate",
          "eCSFB_Overall_Success_Rate",
          "CSFB_Attempts",
        "Total_PUCCH_PRB_UL_per",
          "lat",
          "lon"


        \]
    }

    mutate { convert => {"lat" => "float"} }
    mutate { convert => {"lon" => "float"} }
    mutate { rename => {"lat" => "\[location\]\[lat\]"} }
    mutate { rename => {"lon" => "\[location\]\[lon\]"} }

}
output {
    elasticsearch {
        template => "/usr/share/elasticsearch/new.json"
        template_overwrite => true
        hosts => "localhost:9200"
        index => "new"
        workers => 1
    }
    stdout {}
}                                                                                       

template file : new.json

{
  "template" : "new",
  "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" },
            "lat" : { "type" : "float" },
            "lon" : { "type" : "float" }
          }
        },
  "location" : { "type": "geo_point" }
      }
    }
  }
}]

Пожалуйста, дайте нам знать, как конвертировать в Geo-point

...