繁体   English   中英

无法从 Bash 脚本在后台运行 Logstash

[英]Can't Run Logstash in Background from Bash Script

出于某种原因,我无法将 logstash 作为服务运行。 (我有一张 5 天前的问题单,没有接触到弹性/logstash git 和跨 3 个不同站点的论坛帖子来尝试修复它,没有运气)。 我没问题,现在只想让它从 bash 脚本运行。
从命令行:

cd /opt/logstash
bin/logstash -f [conf_file] > output.txt & 

一切正常,在后台运行并输出到 output.txt。 但是,当我尝试通过 bash 执行此操作时:

cd /opt/logstash
bin/logstash -f /etc/logstash/conf.d/logstash_es.conf > var/log/logstash/logstashconsole.txt &

logstash 在后台启动,但不监听它需要的端口。 而且,如果我尝试重新启动,旧的 logstash 实例不会释放它所绑定的端口。

帮助?

我知道这个问题太老了,无法回答。 但是,我的回答将帮助新用户使用 ELK Stack。

你做对了。

cd /opt/logstash
bin/logstash -f [conf_file] > output.txt &

你所要做的就是disown你的过程。 一种方法是使用内置的 disown shell 从 shell 的作业控制中删除作业:

disown

如果您有多个后台作业,请在命令后包含 % 和作业 ID:

disown %1

使用jobs -l命令确认作业已从活动作业表中删除。 要列出所有正在运行的进程,包括被拒绝的进程,请使用ps aux命令。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM