Презентация: ![](Joker_2022_Elastic.pdf) ### Описание доклада Почему писать все логи в Elastic — не такая простая задача, как кажется. Поговорим про особенности использования ElasticSearch для логов, подводные камни Java-клиента (и не только) и инженерную (бес)культурность. ### Мои заметки У них три кластера Эластика, причем они не связаны. Kibana может осуществлять крос-кластерный поиск. ![](screen%2019.png) У спикера в системе 250_000 событий отправляется в эти 3 контура. ![](screen%2020.png) Делить по дате не удачная идея, так как индексы будут разных размеров. Эластик с 6.7 версии умеет сам дробить индексы. ![](screen%2021.png) Есть два клиента для доступа к эластику. High Livel Rest Client это обертка над Rest Client. Hight Level работает в 2+ раз медлнее. Отправлять данные нужно пачками, иначе технические данные каждого HTTP запроса могут быть больше, чем сама лог запись. Есть какой-то Bulk API для решения этой проблемы. Можно сделать так, чтобы в одной пачке были данные для разных индексов. Файловер перестает работать, так как Bulk запросы всегда возвращают HttpCode 200. Конкретные ошибки будут в теле запроса. Если мы сами добавляем для документа айдишник, то эластик будет проверять есть ли такой айди уже в индексе. И UUID v4 снижает производительность поиска. Эластик любит UUID v1 и nanotime.