Comments 19
Спасибо за интересный пост.
Правда, для полноты картины не хватает конфигов, но всё же. :)
Правда, для полноты картины не хватает конфигов, но всё же. :)
Logstash плохо справляется с парсингом многострочных логов. Как с этим обстоят дела у lumberjack?
Lumberjack вообще ничего не парсит, тупо шлет куски логов на logstash и все.
Да, именно так и есть, Lumberjack не разбирает сообщения, а просто шлет построчно. Начиная с 1.2.2 версии Logstash делает это вполне прилично, мы встретили проблемы только на очень больших мультистрочных сообщениях, так что есть смысл попробовать еще раз.
Пробовал эту штуку в продакшене, не понравилось что система получается довольно тяжелой. Центральный логстэш и эластик так вообще под дикой нагрузкой. А это всего лишь с сотней хостов.
На такое количество логов ES надо кластерить однозначно. И увеличивать количество шардов. Ну вы знаете наверное.
Безусловно в вашем случае надо кластеризовать и Elasticsearch и Logstash. С сотней хостов нашей фермы вполне успешно справлялся 4х ядерный инстанс с 10тью GB RAM, если я правильно помню, то было 4 шарда в Elasticsearch и 3 потока в Logstash.
В зависимости от задач логи можно слать по сети даже таким простым методом как заворачивание их в пайп netcat'у, который «плюнет» их в Logstash. Для Apache, например, это самое простое решение «в лоб»
В заголовке указан RabbitMQ, но в самой статье о нем ни слова. Разработчики logstash рекомендуют вместо него использовать redis.
У меня логи собирает logstash кладет в redis, другой инстанс logstash идет в редис индексирует логи, чистит, парсит, и кладет в elastic. Третий инстанс тупо kibana.
А fluentd никто не пробовал? Смущает только отсутствие дашборда вроде кибаны (хотя можно слать в эластик и тажке смотреть кибаной).
афигенное бокэ
Sign up to leave a comment.
Собираем и анализируем логи с помощью Lumberjack+Logstash+Elasticsearch+RabbitMQ