为什么Logstash不排除它自己的日志文件?

时间:2015-04-11 19:10:22

标签: logstash

根据logstash文档,这应该工作;但是logstash通过将自己的stdout日志记录到自身来继续引起递归...

我的排除配置有什么不正确?

input {
    file {
        path => "/var/log/**/*"
        exclude => ["**/*.gz", "logstash/*"]

    }
}

output {
    tcp {
        host => "1.2.3.4"
        port => 1234
        mode => client
        codec => json_lines
    }
    stdout { codec => rubydebug }
}

我看到路径设置为/var/log/logstash/logstash.stdout的结果应该忽略它们。

(我已经通过完全删除/ var / log / logstash目录中的日志并重新启动来测试了这一点)

我在数组中尝试过这些以排除:

logstash/*
**/logstash/*
/var/log/logstash/* #This is incorrect according to docs

1 个答案:

答案 0 :(得分:1)

Logstash file input的排除模式,如文档所述,与遇到的文件的文件名完全匹配,因此问题中的三种模式将不会匹配任何内容。要排除Logstash日志文件和gzip压缩文件,请使用logstash.**.gz作为排除模式。