Как создать собственный идентификатор процесса в пакетном режиме (Окно)

413
Mishi

У меня есть пакетный скрипт и через этот скрипт я запустил logstash. Он успешно работает и записывает логи в мой собственный файл.

logstash.bat -f CONFIG_FILE_NAME >> C:\User\logs\agent.log 

Теперь я хочу создать свой собственный идентификатор процесса для logstash и записать этот pid в файл.

Я могу сделать это в Linux с помощью следующей команды.

./logstash -f $CONFIG_FILE_NAME --config.reload.automatic > ../logs/agent.log & echo $! >>/$current_dir/$LOGSTASH_FOLDER/agent.pid 

Как я могу сделать это в Windows?

0
Существует [обсуждение] (https://github.com/elastic/logstash/issues/3577) о добавлении опции для записи pid-файла, но пока разработчики неохотно делают это. Так что, я думаю, единственный вариант - это отдельно запустить `jps -l` после запуска logstash и извлечь значение pid из вывода. wolfrevokcats 7 лет назад 0
Можете ли вы показать логику, которая находится в файле `logstach.bat`, или объяснить со стороны пакета, что работает для выполнения того, что и как это сработало? Получение PID не сложно и возможно, если вы ссылаетесь на фактический идентификатор выполняемого процесса. Помогите мне понять кое-что из этого, и я смогу помочь вам с этой задачей, когда я на 100% уверен, что понимаю ваш процесс, логику и т. Д. Pimp Juice IT 7 лет назад 0

0 ответов на вопрос