logstash:有没有办法在/etc/logstash/conf.d中使用多个configuration文件时查看完整的运行configuration?

我正在运行logstash 1.5.0.1,并在我的/etc/logstash/conf.d文件夹中有多个configuration文件:

  01-input-source-one.conf 02-input-source-two.conf 10-filter-one.conf 11-filter-two.conf 20-output-one.conf 21-output-two.conf 

修改configuration文件后,我使用/opt/logstash/bin/logstash agent -f /etc/logstash/conf.d --configtest

如果我的一个configuration文件出现问题,我收到一条消息,引用组合文件中的行号,如下所示:

Error: Expected one of #, ", ', } at line 331, column 13 (byte 15167) after filter {

有时,但不是所有的时候,它显示了一个错误代码片段,帮助我find正确的文件,但错误的行号仍然没有任何好处。

有谁知道是否有方法来查看组合的configuration文件?

这对解决configuration问题非常有用,这些configuration问题不是语法错误(即传递--configtest )的结果,而是sorting问题的结果。

谢谢!

是的,从命令行以交互方式运行它。 它会产生很多其他的信息。

/opt/logstash/bin/logstash --debug -f /etc/logstash/conf.d

或者运行下面的testing,看看编译的configuration

/opt/logstash/bin/logstash --debug --debug-config -t -f /etc/logstash/conf.d/

你可能想开球的输出,这也给你所有的grokfilter等

cat -n /etc/logstash/conf.d/*

这将打印该文件夹中所有文件的内容,将行号作为一个连续文件排列,以便logstashdebugging中的行号相互关联。