2015-03-06 5 views
0

У меня есть индекс в ElasticSearch. В этом индексе есть атрибут client_ip. В Kibana у меня есть опция «Карта» для создания панели на основе карты мира. Как я могу использовать эту опцию и атрибут client_ip в индексе, чтобы показывать количество на карте мира?Как показать подсчеты на карте мира с использованием IP-адреса, хранящегося в ElasticSearch, на Kibana?

После того, как я увидел первые два ответа ниже. Прежде чем я подтолкнул данные к ES, я посмотрел GeoPoint [lon, lat] с клиентом ip. В Kibana 3.1.2 я создал лучшую карту и указал ее на это гео-поле. Скручивание запроса за этим улучшением возвращает много данных назад. их геопотоки выглядят хорошо. Однако BetterMap ничего не возвращает. Почему-то зачем? Спасибо

ответ

0

Вам нужно будет использовать сервис, чтобы превратить эти IP-адреса в типы «Geo Point» ElasticSearch.

https://www.elasticsearch.org/guide/en/elasticsearch/reference/current/mapping-geo-point-type.html#mapping-geo-point-type

+0

Это то, что я пробовал: я искал гео базу данных, чтобы получить значение GeoPoint [lon, lan] от IP-адреса клиента, прежде чем я подтолкнул его к индексу ES. – bill

1

Kibana или Elasticsearch не имеют возможности для преобразования IP в геоинформации. Вам нужно сделать это с использованием базы данных Geo lite или чего-то еще, а затем нажать ее в Elasticsearch как тип точки геоданных. Затем вы можете визуализировать кибану.

Если вы используете logstash, вы можете использовать плагин Geo, чтобы сделать это без проблем.