Как остановить файл конфигурации logstash, работающий в Ubuntu?

Я запускаю файл конфигурации logstash в Ubuntu, используя следующую команду.

/opt/logstash/bin/logstash -f /etc/logstash/conf.d/logstash.conf

Это работает, однако недавно я понял, что каждый раз, когда я запускаю эту команду, она запускает другой экземпляр. Теперь я думаю, что запущено шесть экземпляров. Потому что каждая новая запись, которую я создаю, отображается как шесть в elasticsearch.

Как я могу остановить все эти другие экземпляры и есть ли способ проверить, сколько из них запущено? Спасибо


person Mishal Harish    schedule 10.03.2016    source источник


Ответы (2)


Вы можете использовать команду pkill и указать имя процесса (процессов), который вы хотите убить.

pkill logstash

Или команда killall работает так же

killall logstash
person Val    schedule 10.03.2016
comment
Отмечено, однако на данный момент у меня нет доступа к Ubuntu. Скоро получу и попробую. Большое спасибо, будем знать, как пойдет. - person Mishal Harish; 10.03.2016
comment
Согласен, хотя, используя имя процесса, вы экономите один шаг, т.е. вам не нужно находить все PID для всех 6 процессов. - person Val; 10.03.2016
comment
спасибо, pkill logstash сработал, хотя это было непросто. Пробовал запуск/остановку службы logstash после pkill, и это сработало. Не уверен, что произошло. Есть ли способ увидеть, сколько конвейеров работает? - person Mishal Harish; 10.03.2016

Как утверждает Вэл, pkill должен помочь решить то, с чем вы столкнулись.

Чтобы избежать этого в будущем, почему бы вам не создать небольшой файл службы, который использует файл PID, чтобы вы не могли запускать несколько экземпляров? Вот что я сделал:

http://www.logstashbook.com/code/3/logstash-central.init

person W Khan    schedule 11.03.2016