Logstash 作为服务运行时日志存储不工作
我正试图在我的Debian机器上运行logstash。出于测试目的,配置文件很简单:Logstash 作为服务运行时日志存储不工作,logstash,Logstash,我正试图在我的Debian机器上运行logstash。出于测试目的,配置文件很简单: input { stdin {} } output { file { path => "/tmp/test_logstash" } } 当我运行命令sudo/etc/init.d/logstash start时,我得到输出logstash start 现在,我在命令行中键入一些示例输入,例如ls-lah,它应该按照配置文件中的配置写入/tmp/test\u
input {
stdin {}
}
output
{
file {
path => "/tmp/test_logstash"
}
}
当我运行命令sudo/etc/init.d/logstash start
时,我得到输出logstash start
现在,我在命令行中键入一些示例输入,例如ls-lah
,它应该按照配置文件中的配置写入/tmp/test\u logstash
但是什么都没有写,当我询问logstash的状态时,我得到了输出logstash没有运行
/var/log/logstash
中的所有日志文件都是空文件
当我运行/opt/logstash/bin/logstash-f/etc/logstash/conf.d
时,一切正常,但我需要在后台将其作为服务运行
cat /var/log/logstash/logstash-plain.log
我刚开始使用logstash,也许这是一个很容易解决的问题,但我还没有找到任何解决方案
如果有人能解决这个问题,那就太好了
编辑:
背景是我想在ansible playbook/opt/logstash/bin/logstash-f/path/to/config
中安装并启动logstash,playbook挂在那里,等待命令完成(情况并非如此,因为您必须使用ctrl+d退出logstash)。也许有一个更简单的解决办法
编辑2:
/opt/logstash
目录的所有者是具有组logstash的用户logstash。logstash的init.d启动脚本简单如下:
#!/bin/bash
/opt/logstash/bin/logstash -f /etc/logstash/conf.d
提前感谢。只需使用以下命令:
/opt/logstash/bin/logstash -f /etc/logstash/conf.d &
这将在后台启动该过程
cat /var/log/logstash/logstash-plain.log
就我而言,我运行了以下命令:
chmod -R 777 /var/lib/logstash
您可以向我们展示init.d中的logstash开始脚本,并告诉我们谁是/opt/logstash目录的所有者以及为该目录设置了哪些权限吗?也许,您可以在您的剧本中尝试-shell:nohup/opt/logstash/bin/logstash-f/path/to/config&直到找到一个提供服务的解决方案。@pWoz我添加了您要求的信息。抱歉,我花了一段时间,因为我今天才在办公室,无法提前获得信息。@RaulHugo ansible playbook在使用nohup启动logstash时也只是挂在启动logstash上。除了此rpm之外,我什么都没有。也许这就是解决办法(