diff --git a/cmd/examples/kafka.go b/cmd/examples/kafka.go
index <HASH>..<HASH> 100644
--- a/cmd/examples/kafka.go
+++ b/cmd/examples/kafka.go
@@ -52,8 +52,14 @@ func main() {
 			case consumedMessage := <-consumer.Incoming():
 				log.Info("Message consumed", log.Data{"messageReceived": string(consumedMessage.GetData())})
 				consumedMessage.Commit()
-			case errorMessage := <-consumer.Errors():
-				log.Error(fmt.Errorf("Aborting"), log.Data{"messageReceived": errorMessage})
+			case consumerError := <-consumer.Errors():
+				log.Error(fmt.Errorf("Aborting"), log.Data{"messageReceived": consumerError})
+				producer.Closer() <- true
+				consumer.Closer() <- true
+				exitChannel <- true
+				return
+			case producerError := <-producer.Errors():
+				log.Error(fmt.Errorf("Aborting"), log.Data{"messageReceived": producerError})
 				producer.Closer() <- true
 				consumer.Closer() <- true
 				exitChannel <- true
add example of handling kafka producer errors