I have this log4j2.xml file I don't understand why Failover appender is not working when Kafka appender is failing. My Kafka appender is:
<Kafka name="kafka" topic="myTopic" ignoreExceptions="false" >
<JsonLayout />
<Property name="bootstrap.servers">127.0.0.1:9092</Property>
</Kafka>
My Failover appender is:
<FailOver name="fail-over" primary="kafka" ignoreExceptions="false">
<Failovers>
<AppenderRef ref="randomFile" />
</Failovers>
</FailOver>
My root level is:
<Root level="info" includeLocation="false">
<AppenderRef ref="fail-over" />
</Root>
But for some reason I keep getting connection refusal error which exactly is:
16:32:05.669 [kafka-producer-network-thread | producer-1] DEBUG org.apache.kafka.common.network.Selector - [Producer clientId=producer-1] Connection with /127.0.0.1 disconnected
java.net.ConnectException: Connection refused
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717)
at org.apache.kafka.common.network.PlaintextTransportLayer.finishConnect(PlaintextTransportLayer.java:50)
at org.apache.kafka.common.network.KafkaChannel.finishConnect(KafkaChannel.java:224)
at org.apache.kafka.common.network.Selector.pollSelectionKeys(Selector.java:526)
at org.apache.kafka.common.network.Selector.poll(Selector.java:481)
at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:561)
at org.apache.kafka.clients.producer.internals.Sender.runOnce(Sender.java:327)
at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:242)
at java.lang.Thread.run(Thread.java:748)