logstash file输入,无输出原因与解决办法

一、现象

很多同学在用logstash input 为file的时候,经常会出现如下问题:配置文件无误,logstash有时一直停留在等待输入的界面

二、原因解释

logstash作为日志分析的管道,在实际场景中,日志量往往很大,因此不可能每次都是完整扫描一遍日志文件,然后导入。通常采用的办法就是增量读取。也就是读取新增量

NOTE:图1中的配置文件,在第一次运行的时候,是会有结果的。后续则为等待输入

三、解决办法

方法1:将日志文件先cp 然后 mv

cp 2.log 2.log.new && mv 2.log.new 2.log 

方法2:logstash配置文件做如下修改

input {
    file {
        path => "/opt/logstash/1.log"
        start_position => "beginning"
        sincedb_path => "/dev/null"
    }
}
output{
        stdout{codec => rubydebug}
}

四、结语

实际生产场景中,最好不要这么用,因为日志过大,每次重头读日志耗费资源,也无必要。此处适合测试场景 想了解更多,可以参看官网的参数解释logstash File input

posted @ 2018-10-22 16:40  杨文波  阅读(567)  评论(0编辑  收藏  举报