计划将我的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)"
答案 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}"
}
}