You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@kafka.apache.org by 一直以来 <27...@qq.com> on 2020/04/05 04:06:59 UTC

java kafka-client use "props.put("retries", "5")" ,why print 2 log ?

public class ProduceMessage {
	public static void main(String[] args) {
		Properties props = new Properties();
		props.put("bootstrap.servers", "192.168.1.113:9091");&nbsp; ///////////////////////////////////////////// wrong ip address.
		props.put("acks", "1");
		props.put("retries", "5");////////////////////////////////////////////////////////////////////////// value 5
		props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
		props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");


		Producer<String, String&gt; producer = new KafkaProducer<&gt;(props);
		for (int i = 0; i < 1; i++) {
			producer.send(new ProducerRecord<String, String&gt;("myTopic1", "key" + (i + 1), "value" + (i + 1)));
		}
		producer.close();
	}
}



console print result:

[kafka-producer-network-thread | producer-1]&nbsp;WARN org.apache.kafka.clients.NetworkClient -&nbsp;[Producer clientId=producer-1]&nbsp;Connection to node -1 (/192.168.1.113:9091) could not be established. Broker may not be available.
[kafka-producer-network-thread | producer-1]&nbsp;WARN org.apache.kafka.clients.NetworkClient -&nbsp;[Producer clientId=producer-1]&nbsp;Bootstrap broker 192.168.1.113:9091 (id: -1 rack: null) disconnected
[kafka-producer-network-thread | producer-1]&nbsp;WARN org.apache.kafka.clients.NetworkClient -&nbsp;[Producer clientId=producer-1]&nbsp;Connection to node -1 (/192.168.1.113:9091) could not be established. Broker may not be available.
[kafka-producer-network-thread | producer-1]&nbsp;WARN org.apache.kafka.clients.NetworkClient -&nbsp;[Producer clientId=producer-1]&nbsp;Bootstrap broker 192.168.1.113:9091 (id: -1 rack: null) disconnected
[main]&nbsp;INFO org.apache.kafka.clients.producer.KafkaProducer -&nbsp;[Producer clientId=producer-1]&nbsp;Closing the Kafka producer with timeoutMillis = 9223372036854775807 ms.

&nbsp;

log4j.properties:

log4j.rootLogger=INFO,console
log4j.logger.com.demo.kafka=DEBUG,kafka
log4j.appender.kafka=kafka.producer.KafkaLog4jAppender
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d&nbsp;[%-5p]&nbsp;[%t]&nbsp;-&nbsp;[%l]&nbsp;%m%n

Re: java kafka-client use "props.put("retries", "5")" ,why print 2 log ?

Posted by Liam Clarke <li...@adscale.co.nz>.
Hi 直以来,

Retries only applies to attempts to send a record - What you're seeing in
the logs (NetworkClient) is the producer attempting to load cluster
metadata (which broker is the leader for which partition etc.) on
instantiation.

Kind regards,

Liam Clarke-Hutchinson

On Sun, Apr 5, 2020 at 4:07 PM 一直以来 <27...@qq.com> wrote:

> public class ProduceMessage {
>         public static void main(String[] args) {
>                 Properties props = new Properties();
>                 props.put("bootstrap.servers", "192.168.1.113:9091");&nbsp;
> ///////////////////////////////////////////// wrong ip address.
>                 props.put("acks", "1");
>                 props.put("retries",
> "5");//////////////////////////////////////////////////////////////////////////
> value 5
>                 props.put("key.serializer",
> "org.apache.kafka.common.serialization.StringSerializer");
>                 props.put("value.serializer",
> "org.apache.kafka.common.serialization.StringSerializer");
>
>
>                 Producer<String, String&gt; producer = new
> KafkaProducer<&gt;(props);
>                 for (int i = 0; i < 1; i++) {
>                         producer.send(new ProducerRecord<String,
> String&gt;("myTopic1", "key" + (i + 1), "value" + (i + 1)));
>                 }
>                 producer.close();
>         }
> }
>
>
>
> console print result:
>
> [kafka-producer-network-thread | producer-1]&nbsp;WARN
> org.apache.kafka.clients.NetworkClient -&nbsp;[Producer
> clientId=producer-1]&nbsp;Connection to node -1 (/192.168.1.113:9091)
> could not be established. Broker may not be available.
> [kafka-producer-network-thread | producer-1]&nbsp;WARN
> org.apache.kafka.clients.NetworkClient -&nbsp;[Producer
> clientId=producer-1]&nbsp;Bootstrap broker 192.168.1.113:9091 (id: -1
> rack: null) disconnected
> [kafka-producer-network-thread | producer-1]&nbsp;WARN
> org.apache.kafka.clients.NetworkClient -&nbsp;[Producer
> clientId=producer-1]&nbsp;Connection to node -1 (/192.168.1.113:9091)
> could not be established. Broker may not be available.
> [kafka-producer-network-thread | producer-1]&nbsp;WARN
> org.apache.kafka.clients.NetworkClient -&nbsp;[Producer
> clientId=producer-1]&nbsp;Bootstrap broker 192.168.1.113:9091 (id: -1
> rack: null) disconnected
> [main]&nbsp;INFO org.apache.kafka.clients.producer.KafkaProducer
> -&nbsp;[Producer clientId=producer-1]&nbsp;Closing the Kafka producer with
> timeoutMillis = 9223372036854775807 ms.
>
> &nbsp;
>
> log4j.properties:
>
> log4j.rootLogger=INFO,console
> log4j.logger.com.demo.kafka=DEBUG,kafka
> log4j.appender.kafka=kafka.producer.KafkaLog4jAppender
> log4j.appender.console=org.apache.log4j.ConsoleAppender
> log4j.appender.console.target=System.out
> log4j.appender.console.layout=org.apache.log4j.PatternLayout
>
> log4j.appender.console.layout.ConversionPattern=%d&nbsp;[%-5p]&nbsp;[%t]&nbsp;-&nbsp;[%l]&nbsp;%m%n