Можно ли настроить несколько выходов для одного файла?

В одном из наших приложений мы анализируем журналы приложений с помощью logstash и индексируем их в elasticsearch. Наша простая архитектура - это файлы журналов ---> filebeat ---> logstash -----> elasticsearch.

Поскольку мы включили пример нескольких файлов журнала (apachelogs, журналы пассажиров, журналы приложений и т. Д.), Logstash не может анализировать объем данных, и, следовательно, в elasticsearch отсутствуют журналы. Есть ли способ обрабатывать огромный объем данных в logstash или у нас может быть несколько серверов logstash для получения журналов из filebeat в зависимости от типа журнала? например: журналы приложений отправляют выходные данные logstash-1 и apachelogs в logstash-2.

Заранее спасибо.


person Sarathy    schedule 29.11.2017    source источник


Ответы (1)


В настоящее время невозможно определить один и тот же тип вывода несколько раз в Filebeat.

Но есть несколько способов добиться желаемого:

  • Вы можете использовать опцию loadbalance в filebeat, чтобы распределять свои события по нескольким Logstash. https://www.elastic.co/guide/en/beats/filebeat/current/logstash-output.html#loadbalance, по умолчанию beats выбирает случайный хост и придерживается его.

  • Используйте очередь, например kafka, и сделайте logstash использует ввод kafka, это позволит вам добавить больше LS по мере необходимости.

person Pier-Hugues Pellerin    schedule 29.11.2017
comment
Спасибо за ответ. Кафку попробую. - person Sarathy; 01.12.2017