Docker 高cpu使用率的logstash kafka输入过滤器

Docker 高cpu使用率的logstash kafka输入过滤器,docker,logstash,apache-kafka,Docker,Logstash,Apache Kafka,我遇到了一个问题,kafka logstash管道消耗了太多的cpu(启动时约为300%,几秒钟后为100%),但基本上它是工作的:该管道可以将kafka中的事件传递到elasticsearch中,而没有错误消息 logstash在docker容器中运行,具有最新版本的lostash(2.1.1,pull-from) 配置文件如下所示: input { kafka { topic_id => 'mytopic' zk_connect

我遇到了一个问题,kafka logstash管道消耗了太多的cpu(启动时约为300%,几秒钟后为100%),但基本上它是工作的:该管道可以将kafka中的事件传递到elasticsearch中,而没有错误消息

logstash在docker容器中运行,具有最新版本的lostash(2.1.1,pull-from)

配置文件如下所示:

input {
    kafka {
            topic_id => 'mytopic'
            zk_connect => 'kafka:2181'
    }
}
output {
    elasticsearch {
            hosts=> ['elasticsearch:9200']
    }
    stdout { codec => rubydebug }
}
我有其他logstash管道,它工作良好,cpu使用也很正常(例如,管道使用http作为in,kafka作为out,占用约0%的cpu)。 我试图对elasticsearch的输出进行注释,只留下标准输出,问题仍然存在,因此elasticsearch似乎没有问题


有人会提出建议吗

logstash input kafka插件的紧密循环中有一个bug,它不必要地检查了一个空队列,并跳转到下一个迭代,而不是阻塞

这已在和2.0.3版的插件中修复

要测试这一点,请使用以下方法更新插件:

bin/插件安装——版本2.0.3 logstash input kafka


谢谢你的更新,通过更新插件,问题已经解决了。
input {
    kafka {
            topic_id => 'mytopic'
            zk_connect => 'kafka:2181'
    }
}
output {
    elasticsearch {
            hosts=> ['elasticsearch:9200']
    }
    stdout { codec => rubydebug }
}