2016-10-05 2 views
1

Мы устанавливаем ELS и Kibana для агрегирования/анализа журналов. Первая система, использующая его, - это greenfield, поэтому мы выводим структурированные журналы из сервисов, входящих в нашу систему. Учитывая, что нам не нужно добавлять структуру в наши журналы, я планировал использовать FileBeat для отправки журналов непосредственно в ELS и не использовать LogStash. Является ли это разумным вариантом или LogStash имеет ценность помимо синтаксического анализа, который нам может понадобиться? Если мы используем LogStash, могу ли я использовать это для сбора файлов журналов или я должен использовать FileBeat для накачки журналов в LogStash?FileBeat прямо в ELS или через LogStash?

ответ

3

Logstash полезен, если вам необходимо агрегировать журналы со многих серверов и применять некоторые общие преобразования и фильтрации для ваших событий.

Если ваши события журнала уже структурированы, и вы в порядке с их индексированием напрямую, то вы можете определенно передать Filebeat их непосредственно в ES. Если ES опускается (например, для обслуживания), Filebeat будет повторять попытку, пока он не сможет успешно отправить события.

+0

Примечание: для неограниченного количества попыток вы должны установить строку 'max_retries: -1' в вашей конфигурации' filebeat.yml', иначе она будет пытаться только 3 раза и завершить (значение по умолчанию = 3). В нашей конфигурации у нас также есть Redis, которые действуют как буфер, но опция по-прежнему полезна даже для этого случая (redis также может опускаться). –

2

Является ли это разумным вариантом или LogStash имеет ценность помимо синтаксического разбора, что нам может понадобиться?

Решение использовать Logstash или нет в вашем случае зависит от необходимости обработки журналов перед их вставкой в ​​ES.

В дополнении к разбору (что очевидно бесполезно в вашем случае использовании), вы можете использовать Logstash, чтобы добавить местоположение с geoip filter, разобрать дату с date filter, replace a word with another, replace a field with a hash ...
Вы можете иметь посмотрите на доступный фильтр here.

Если мы используем LogStash, я могу использовать его для сбора файлов журнала или я должен использовать FileBeat для накачки журналов в LogStash?

Если вам нужен Logstash и вы можете позволить себе запускать его на машине, где находятся ваши журналы, вы можете избежать использования filebeat, используя ввод файла.
Но имейте в виду, что Logstash, особенно если используется для синтаксического анализа, может потреблять много ресурсов, лучше иметь его на другой машине и использовать filebeat для перекачки журналов в Logstash.