Logstash Kafka输入无法读取新创建的主题

时间:2017-09-01 09:17:39

标签: logstash

我正在使用以下设置运行logstash实例:

input {
    kafka {
    bootstrap_servers => 'master:9092'
    group_id => 'hdfs'
    topics_pattern => "foo.*"
    codec => "json"
    }
}
filter {
    date {
        locale => "en"
        match => ["logtime", "UNIX_MS"]
        timezone => "Asia/Shanghai"
        target => "@timestamp"
   }
}
output {
    stdout { codec => rubydebug }
    webhdfs {
        host => "master"                  
        port => 50070
        path => "/dt=%{+YYYY-MM-dd}/logstash-%{+HH}.log"  
        user => "root"                        
       codec => "json"
   }
}

Logstash将读取来自Kafka的消息,然后将消息写入webhdfs 我使用正则表达式模式" foo。*"订阅以" foo"开头的所有主题。

在Logstash启动之前,我有两个主题:foo_1和foo_2,Logstash完美地读取它们。然后我创建主题foo_3,Logstash除了重新启动它之外不会订阅foo_3。

我阅读了Logstash guide中的所有配置,但无法找到如何使其工作。 任何人都可以暗示这一点吗?感谢。

BTW我正在使用Logstash 5.5。

1 个答案:

答案 0 :(得分:0)

只需添加:

metadata_max_age_ms => 60000

每60秒钟将订阅一次新主题。

请参阅此https://www.elastic.co/guide/en/logstash/current/plugins-inputs-kafka.html#plugins-inputs-kafka-metadata_max_age_ms