Добрый день.
В приложении logstash есть плагин: "Geoip filter". В описании плагина сказано:
Однако, фактически, это поле передается без указания типа:
Следовательно, невозможно построить карту.
Я уже пытался указать мапинг. Но столкнулся с ограничением, так формат получаемых данные не стабилен, у меня нет возможности прописать мапинг для всех полей, а мапинг конкретного поля у меня не заработал:
Конфиг:
Мапинг поля [geoip][location]

Подскажите, как правильно использовать плагин geoip, так, чтобы на основании полученных координат можно было построить карту?
Вы, наверное, добавили это поле в шаблон после того, как индекс был уже создан. Проблема в том, что шаблон применяется только при создании нового индекса, после того, как индекс создан, надо менять mapping на прямую.
Обычно ничего специально задаваеть не нужно, так как привильный маппинг уже прописан в стандартном шаблоне logstash.
Если эти рассуждения не помогли. Давайте посмотрим, как у вас в данный момент выглядит шаблон в elasticsearch, шаблон в logstash и маппинг индекса.
Спасибо. все так. Я руками прописал маппинг для поля с координатами перед созданием индекса и все стало работать нормально.
Возможно я до этого что-то не так делал. Может в логсташе нужно отдельно активировать плагин geoip.
Изначально я шел по простому пути:
- Установил логсташ
- настроит input
- настроил фильтр geoip
- настроил output/
- получил ошибку с распознаванием типа поля и прописал маппинг руками