Автосоздание индекса по полю

Здравствуйте,

у меня есть индексы типа logs-2015, logs-2016, logs-2017, logs-2018 которые хранят логи. Все эти индексы были созданы полу-автоматически или вручную и писались логи каждый в свой индекс базируясь от поля created_at в самом теле лога.

Вопрос такой:
Есть ли такой механизм который автоматически создает индекс базируясь от поля в документе, и если нет так как это обычно делается?

Благодарю за ответ.

Я не совсем понимаю, что вы хотите добиться. Как поле должно менять создание индекса? Вы не могли бы показать на примере, какую проблему вы пытаетесь решить.

проще говоря мне нужно хранить логи только в тех индексах к которым эти логи относятся.
Например:
event1
created_at: 2017-05-05 -> нужно что бы был записан в logs-2017
event1
created_at: 2018-01-01 -> нужно что бы был записан в logs-2018

и тд.

Нашел что-то похожее https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-rollover-index.html но это не то что мне нужно.
но мне

Тогда, похоже, Вам нужен Date Index Name Processor.

как раз то что нужно.
но остается вопрос автоматического создания индекса. Например создание индекса на каждый день:
logs-2018-01-01
logs-2018-01-02
logs-2018-01-02

Есть идея просто каждый день в полночь через крон создавать вручную через скрипт или создать наперед на лет 10.

Если индекс не существует и вы попытаетесь добавить в него запись, индекс будет создан автоматически. Вы можете добавить index template если вам нужен контроль над установками и схемой.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.