From c9107015b074c0ce1648584c7061ec13f1d21fea Mon Sep 17 00:00:00 2001 From: Daniel Nelson Date: Thu, 11 Jul 2019 13:50:12 -0700 Subject: [PATCH] Emit sarama library log messages at debug level (#6091) --- plugins/outputs/kafka/kafka.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/plugins/outputs/kafka/kafka.go b/plugins/outputs/kafka/kafka.go index 3df5a3a67..7ba457c59 100644 --- a/plugins/outputs/kafka/kafka.go +++ b/plugins/outputs/kafka/kafka.go @@ -62,6 +62,26 @@ type ( } ) +// DebugLogger logs messages from sarama at the debug level. +type DebugLogger struct { +} + +func (*DebugLogger) Print(v ...interface{}) { + args := make([]interface{}, 0, len(v)+1) + args = append(args, "D! [sarama] ") + log.Print(v...) +} + +func (*DebugLogger) Printf(format string, v ...interface{}) { + log.Printf("D! [sarama] "+format, v...) +} + +func (*DebugLogger) Println(v ...interface{}) { + args := make([]interface{}, 0, len(v)+1) + args = append(args, "D! [sarama] ") + log.Println(args...) +} + var sampleConfig = ` ## URLs of kafka brokers brokers = ["localhost:9092"] @@ -327,6 +347,7 @@ func (k *Kafka) Write(metrics []telegraf.Metric) error { } func init() { + sarama.Logger = &DebugLogger{} outputs.Add("kafka", func() telegraf.Output { return &Kafka{ MaxRetry: 3,