2017-09-14 44 views
0

我使用rpm方法在CentOS 7(使用版本5.6)框中安装了ELK(版本5.6弹性/ logstash/kibana)堆栈,并启用了启动时运行的服务。我验证它重新启动后运行如下:Logstash在启动时不加载配置管道

ps aux | grep logstash 
logstash 744 4.6 2.2 3381144 363308 ?  SNsl 09:06 0:48 /usr/bin/java -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+DisableExplicitGC -Djava.awt.headless=true -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -Xmx1g -Xms256m -Xss2048k -Djffi.boot.library.path=/usr/share/logstash/vendor/jruby/lib/jni -Xbootclasspath/a:/usr/share/logstash/vendor/jruby/lib/jruby.jar -classpath : -Djruby.home=/usr/share/logstash/vendor/jruby -Djruby.lib=/usr/share/logstash/vendor/jruby/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main /usr/share/logstash/lib/bootstrap/environment.rb logstash/runner.rb --path.settings /etc/logstash 

我没有看到任何有关我的管道配置的进程命令。在我的设置文件中,我有path.config : /etc/logstash/conf.d/*.conf

这是从默认path.config : /etc/logstash/conf.d/修改,根据documentation完全相同的事情(我已经尝试过)。

我有3个文件是有效的,因为我可以手动采集数据: /usr/share/logstash/bin/logstash -f '/etc/logstash/conf.d/{fileA,fileB,fileC}.conf'(或我可以单独运行它们)。

我希望这些摄入管道在我的服务器重新启动时启动,但我相信我的配置已正确设置。我甚至重新运行system-install脚本以获得更好的效果。有任何想法吗?

回答

0

我结束了前往/etc/systemd.system/logstash.service和改变手动更改systemd配置为logstash:

ExecStart=/usr/share/logstash/bin/logstash "--path.settings" "/etc/logstash" 

到:

ExecStart=/usr/share/logstash/bin/logstash "--path.settings" "/etc/logstash" "-f" "/etc/logstash/conf.d/{fileA,fileB,fileC}.conf" 

重启后,我发现了这个过程确实是装载这些管道。