Выход из logstash - PullRequest
       2

Выход из logstash

0 голосов
/ 09 мая 2020

Я хочу выйти из logsta sh в моем python скрипте, раньше в cmd я просто нажимаю ctrl- c, чтобы выключить его. Я пытался использовать одну из этих функций, но она не работает. У кого-нибудь есть идея, пожалуйста, как я могу это сделать.

import os
import subprocess
import signal

@main.route('/data')
def data():
        ...
        target_dir = os.path.join("C:\elastic_stack\logstash-7.6.2")

        # small check
        if os.path.isdir(target_dir):
            os.chdir(target_dir)
        else:
            print(" pathname does not refer to an existing directory")

        # current working directory
        print(os.getcwd())

        # start logstash directly os.system will return the return code of the command if it's 0 means OK
        os.system(".\\bin\\logstash -f C:\\Users\\Asus\\Dropbox\\PFE_part2\\New_flask_app\\logstash.conf")

        # if you need the output after you started logstash it will work ONLY in Python3

        process = subprocess.Popen([".\\bin\\logstash", "-f", "C:\\Users\\Asus\\Dropbox\\PFE_part2\\New_flask_app\\logstash.conf"], stdout=subprocess.PIPE, stderr=subprocess.PIPE)


        output = process.stdout
        errors = process.stderrt


        #After logstash finished the work above, it shut down       
        os.kill(process.pid, signal.SIGTERM)  #that doesn't work


        process.sendcontrol('c') #or either this
        process.close()

        return render_template('data.html')


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...