[英]Kafka logs in go service
我需要 kafka 消费者日志进行调试。 我执行以下操作:
chanLogs := make(chan confluentkafka.LogEvent)
go func() {
for {
logEv := <-chanLogs
logger.Debug("KAFKA: " + logEv.String())
}
}()
configMap["go.logs.channel.enable"] = true
configMap["go.logs.channel"] = chanLogs
consumer, err := confluentkafka.NewConsumer(&configMap)
err := consumer.SubscribeTopics(Topics, nil)
我从来没有得到一条线。 我用 kafka chan ( consumer.Logs()
)尝试了它,结果相同。 我做错了什么?
UPD在最初的帖子中,我错误地设置了参数名称。 正确的是go.logs.channel.enable
。 但有时这仍然不起作用。
如文档中所述,您应该启用该功能:
go.logs.channel.enable (bool, false) - Forward log to Logs() channel.
go.logs.channel (chan kafka.LogEvent, nil) - Forward logs to application-provided channel instead of Logs(). Requires go.logs.channel.enable=true.
所以改变你的代码,如:
configMap["go.logs.channel"] = chanLogs
configMap["go.logs.channel.enable"] = true
consumer, err := confluentkafka.NewConsumer(&configMap)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.