Зачем устанавливать logstash, если я могу просто отправить данные через REST в elasticsearch?

Я установил elasticsearch и kibana и следую инструкциям. https://www.elastic.co/guide/en/elasticsearch/reference/current/_index_and_query_a_document.html И я отлично вставляю и читаю данные, например:

PUT /customer/external/1?pretty
{
  "name": "John Doe"
}

Итак, это заставляет меня задаться вопросом, для чего мне нужен logstash или filebeats? Мой план состоит в том, чтобы регистрировать каждый веб-запрос на веб-сайте для эластичного поиска для аналитики.

Нужно ли устанавливать logstash? Я не понимаю, для чего мне это нужно. (Я не планирую хранить его в файле). Я прочитаю информацию о запросе (например, IP-адрес, время, user_id и т. д.) из PHP-скрипта и просто отправлю ее через HTTP REST REQUEST... как в примере выше. на сервер elasticsearch, который все равно сохранит данные. Итак, я не вижу причин хранить данные на веб-сервере (это дублирование данных), и если бы я хотел, зачем мне вообще нужен logstash... Я могу просто прочитать файл .log и отправить его на elasticsearch.... как этот пример: https://www.elastic.co/guide/en/elasticsearch/reference/current/_exploring_your_data.html


person Gabriel Rodriguez    schedule 25.02.2017    source источник
comment
Откуда вы будете читать каждый веб-запрос (они хранятся в файле?) и как вы будете отправлять их в Elasticsearch?   -  person Val    schedule 25.02.2017
comment
(Я не планирую хранить его в файле). Я прочитаю информацию о запросе (например, IP-адрес, время, user_id и т. д.) из PHP-скрипта и просто отправлю ее через HTTP REST REQUEST, как в примере выше, в elasticsearch. сервер, который все равно сохранит данные. Итак, я не вижу причин хранить данные на веб-сервере (это дублирование данных), и если бы я хотел, зачем мне вообще нужен logstash... Я могу просто прочитать файл .log и отправить его на elasticsearch.... как этот пример: elastic.co/guide /ru/elasticsearch/reference/current/   -  person Gabriel Rodriguez    schedule 26.02.2017
comment
В конце концов, все зависит от того, хотите ли вы проиндексировать 100% своих данных или можете потерять часть из них. Вопрос, который вы должны задать себе, заключается в том, что происходит, когда у вас есть проблемы с сетью между вашим PHP-скриптом и ES, и/или что произойдет, если ES по какой-то причине не работает (техническое обслуживание и т. д.)?   -  person Val    schedule 26.02.2017
comment
Подводя итог, вам не нужен Logstash, если: 1) вы можете гарантировать, что все всегда будет на 100% онлайн и работать (чего вы разумно не можете) или 2) вы соглашаетесь время от времени терять некоторые данные.   -  person Val    schedule 27.02.2017
comment
@Val, что вы думаете об этом: stackoverflow.com/questions/43080745/   -  person Gabriel Rodriguez    schedule 29.03.2017


Ответы (1)


Нет, вам не нужно устанавливать Logstash, если вы планируете собирать, нормализовать и записывать данные своего приложения самостоятельно. Как вы правильно предположили, Logstash заменит ваш PHP-скрипт.

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

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

person Christian Häckh    schedule 25.02.2017
comment
Как насчет этого: stackoverflow.com/questions/43080745/ - person Gabriel Rodriguez; 29.03.2017
comment
@Gabriel Это не имеет значения, IMO - person thanos.a; 14.12.2020