![](/img/trans.png)
[英]does logstash's elasticsearch output plugin retry individual bulk errors?
[英]Logstash plugin to output to Kafka not working
我正在嘗試從Logstash向Kafka發送消息,並不斷出現以下錯誤:
tail -f /var/log/logstash/logstash-plain.log
[2018-04-18T17:55:33,836][WARN ][org.apache.kafka.clients.NetworkClient]
[Producer clientId=producer-1] Connection to node -1 could not be established. Broker may not be available.
[2018-04-18T17:55:46,095][INFO ][logstash.outputs.kafka ] Sending batch to Kafka failed. Will retry after a delay. {:batch_size=>1, :failures=>1, :sleep=>0.1}
[2018-04-18T17:55:51,979][INFO ][logstash.outputs.kafka ] Sending batch to Kafka failed. Will retry after a delay. {:batch_size=>1, :failures=>1, :sleep=>0.1}
[2018-04-18T17:56:46,196][INFO ][logstash.outputs.kafka ] Sending batch to Kafka failed. Will retry after a delay. {:batch_size=>1, :failures=>1, :sleep=>0.1}]
以前可以正常運行,但現在不行,而且我不確定由於未觸摸機器而發生了什么變化。
我可以通過運行Kafka的計算機,運行Logstash的計算機以及從VPC以外的遠程計算機上的控制台生產者與Kafka進行通信,所以我不認為這是網絡錯誤。 可以肯定的是,我將Logstash與Kafka放在同一台機器上,但是遇到了同樣的錯誤。
我仔細檢查並確保我使用的是最新版本的Kafka,Logstash和logstash-output-kafka插件,因此我也不認為這是兼容性問題。 我嘗試重新啟動Logstash和代理無濟於事。
基本上,我不知道如何解決此問題。 任何幫助,將不勝感激。 謝謝。
好吧,我知道了。 這是logstash.conf文件中的一個配置問題:當我將kafka輸出更改為機器的本地IP地址時,它可以工作。 看來,它不能與公用或專用主機名或公用IP地址一起使用。 由於我正在使用帶有多個kafka主題的條件,如下所示:
output {
kafka {
bootstrap_servers => "10.0.0.XX:9092"
codec => json
topic_id => "test_topic"
}
if [type] == "ping" {
kafka {
bootstrap_servers => "10.0.0.XX:9092"
codec => json
topic_id => "logstash-ping"
}
}
else if [type] == "snmp" {
kafka {
bootstrap_servers => "10.0.0.XX:9092"
codec => json
topic_id => "logstash-snmp"
}
}
}
即使從logstash日志中看到的連接正確,即使其中任何一個設置不正確,它也不會發送給其中任何一個。
作為參考,我對監聽器和advertised.listeners的設置如下:
listeners=PLAINTEXT://0.0.0.0:9092
advertised.listeners=PLAINTEXT://ec2-XX-XX-XX-XX.compute-1.amazonaws.com:9092
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.