отправка журналов в logstash через ввод http из приложения узла

У меня есть установка elk на машине с Linux, и мое приложение узла размещено на той же машине. Теперь я хочу отправить журналы приложений моего узла через ввод http или restful API в logstash. кто-нибудь имеет представление об этом??

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


person vamsi    schedule 21.02.2018    source источник
comment
Почему бы не сбросить журналы узлов в файл и не позволить Logstash следить за ними? Не рекомендуется синхронно отправлять журналы через HTTP. Что делать, если Logstash по какой-то причине не работает? Что делать, если Logstash по какой-то причине работает медленно? Ваше приложение node пострадает без всякой причины.   -  person Val    schedule 21.02.2018
comment
спасибо за ответ Вал. все, что вы сказали, прекрасно и потрясающе. но у меня есть еще один вопрос, то есть я хочу поддерживать этот метод http в каждой функции асинхронно, и я также хочу хранить журналы в файле, а затем отправлять их в logstash. это хорошо ??? пожалуйста, дайте мне знать, если моя мысль плоха. и извините за мой глупый английский.   -  person vamsi    schedule 21.02.2018


Ответы (2)


Вы пытались использовать logstash-input-http плагин?

в logstash.conf

input {
  http {
    host => "0.0.0.0"
    port => 8080
  }
}
person yountae.kang    schedule 22.02.2018
comment
Нет, приятель, можешь объяснить, как настроить его в приложении node?? - person vamsi; 22.02.2018
comment
во-первых, вы должны установить плагин logstash-input-http и установить его в logstash conf, после этого вы можете отправить HTTP-запрос на публикацию в logstash, используя ip-адрес logstash machin. var запрос = требуется('запрос'); request.post(http:/logstashIP:8080, {данные: {ключ: 'значение'} }, функция (ошибка, ответ, тело) { если (! ошибка && response.statusCode == 200) { console.log(тело ) } } ); - person yountae.kang; 22.02.2018
comment
hai yountae, хочу ли я установить logstash-input-http как на машине с Linux, так и в моем приложении node ??? - person vamsi; 26.02.2018
comment
Привет, ты знаешь, как установить logstash-input-http на Centos ?? я не нашел команду для установки этого. - person vamsi; 26.02.2018
comment
найдите свой путь к logstash, что-то вроде /usr/share/logstash/bin/ перейдите в эту папку и выполните logstash-plugin install logstash-input-http - person yountae.kang; 27.02.2018

Я бы согласился с @val , не идеально писать в Logstash http. Добавьте между ними брокеров сообщений, таких как Kafka, которые могут вам помочь, и Logstash может читать из kafka.

person user9393459    schedule 21.02.2018
comment
спасибо тебе бро. есть ли шанс создать http-метод, который должен вызываться в каждой функции, и эти журналы должны идти в файл нашего приложения, а затем в logstash. - person vamsi; 22.02.2018