2015-06-16 3 views
2

Я хотел бы добавить некоторые пользовательские функции гео-поиска в свою программу (не geoip, перевод ip-адреса в координату). Как фильтровать пользовательские данные lat и lng в данные формата elicsearch geo_type, чтобы я мог визуализировать карту кибановой плитки?Как добавить данные типа geo_point в elasticsearch из logstash?

ответ

2

, так как вы, возможно, обнаружили, есть (несколько неуклюжие) решения. в основном вам нужно установить сопоставление поля geo_point, прежде чем вы сможете записывать данные таким образом (я также использовал модуль ES python напрямую, вместо этого регистрировался через logstash .. просто чтобы убедиться).

так как вы устанавливаете правильное отображение?

  1. убедитесь, что вы используете свежий экземпляр elasticsearch (или, по крайней мере, что отображение как для индекса и типа вы будете использовать еще не установлен)

  2. пробега от смысла (или используйте соответствующая команда локон)

PUT <index_name> { "mappings": { "<type_name>": { "properties": { "timestamp": { "type": "date" }, "message": { "type": "string" }, "location": { "type": "geo_point" } <etc.> } } } }

теперь вы золотистые, просто убедитесь, что ваши geo_points в формате, который ES excepts

больше картографирования geo_points здесь:

ElasticSearch how to setup geo_point

и здесь:

https://discuss.elastic.co/t/geo-point-logging-from-python-to-elasticsearch/37336

Смежные вопросы