Logstash-5.X Kafka输入插件:没有从kafka主题

时间:2017-05-18 12:30:22

标签: apache-kafka logstash logstash-configuration

计划将我的ELK设置升级到5.x以及我尝试在新环境中的转发器和logstash服务器之间添加kafka消息队列。

转发器向kafka发送消息没有问题。我通过kafka消费者脚本验证了它。

但是当我使用logstash-kafka-input插件从kafka中提取消息时,它没有写任何消息。我是否需要在配置中添加/启用任何特定设置?

我的logstash简单配置:

input {
kafka{
    topics => ["weblogs"]
    bootstrap_servers => "10.11.12.202:9092"
}
}

output {
  stdout { codec => rubydebug }
 file {
                 path => "/tmp/stdout.log"
           }
}

关于主题的Kafka Consumer脚本输出:

[root@logstash kafka_2.11-0.10.2.0]# bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic weblogs
10.11.12.169 - - [27/Apr/2017:13:50:26 +0000] "GET / HTTP/1.0" 302 287 "-" "check_http/v2.0.3 (nagios-plugins 2.0.3)"
192.168.10.11 - - [27/Apr/2017:13:50:29 +0000] "GET / HTTP/1.0" 302 281 "-" "check_http/v2.0.3 (nagios-plugins 2.0.3)"
10.11.12.169 - - [27/Apr/2017:13:50:29 +0000] "GET / HTTP/1.0" 302 291 "-" "check_http/v2.0.3 (nagios-plugins 2.0.3)"
10.11.12.169 - - [27/Apr/2017:13:50:32 +0000] "GET / HTTP/1.0" 302 289 "-" "check_http/v2.0.3 (nagios-plugins 2.0.3)"

2 个答案:

答案 0 :(得分:0)

这是我使用它的基本配置。

input {
  kafka { 
        bootstrap_servers =>["kafkaIp:9092"]
        topics => ["topic1"]
        codec => "json"
        group_id => "logstashgroup"
  }
}
output {
    elasticsearch {
      hosts => ["http://elasticsearchIp:9200"]
      manage_template => true
      index => "indexname"
    }
}

希望这有帮助。

答案 1 :(得分:0)

这是基本的logstash配置,用于从kafka接收输入并将其转发到elasticsearch。

input {
 kafka {
    bootstrap_servers =>["kafka1:9092"]
    topics => ["kafka-topic"]
    codec => json {}
}
}

output {
elasticsearch {
    hosts => "elasticsearch:9200"
    manage_template => false
    index => "kafka-%{+YYYY.MM.dd}"
}
}