[英]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.