SEBA-766-Err-handling-for-exporter
Change-Id: I9b7b775ec8d2b335720b315d470ab83286bf0aa3
diff --git a/VERSION b/VERSION
index c9a5712..b4da54e 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.2.2-dev
+1.2.3-dev
diff --git a/topic-exporter.go b/topic-exporter.go
index 7e604b5..f4ae0bf 100644
--- a/topic-exporter.go
+++ b/topic-exporter.go
@@ -16,9 +16,8 @@
import (
"encoding/json"
- "log"
- "github.com/prometheus/client_golang/prometheus"
"gerrit.opencord.org/kafka-topic-exporter/common/logger"
+ "github.com/prometheus/client_golang/prometheus"
)
var (
@@ -447,31 +446,31 @@
kpi := VolthaKPI{}
err := json.Unmarshal(data, &kpi)
if err != nil {
- log.Fatal(err)
+ logger.Error("Invalid msg on voltha.kpis: %s, Unprocessed Msg: %s", err.Error(), string(data))
}
exportVolthaKPI(kpi)
case "onos.kpis":
kpi := OnosKPI{}
err := json.Unmarshal(data, &kpi)
if err != nil {
- log.Fatal(err)
+ logger.Error("Invalid msg on onos.kpis: %s, Unprocessed Msg: %s", err.Error(), string(data))
}
exportOnosKPI(kpi)
case "importer.kpis":
kpi := ImporterKPI{}
err := json.Unmarshal(data, &kpi)
if err != nil {
- log.Fatal(err)
+ logger.Error("Invalid msg on importer.kpis: %s, Unprocessed Msg: %s", err.Error(), string(data))
}
exportImporterKPI(kpi)
case "onos.aaa.stats.kpis":
kpi := OnosAaaKPI{}
err := json.Unmarshal(data, &kpi)
if err != nil {
- log.Fatal(err)
+ logger.Error("Invalid msg on onos.aaa.stats.kpis: %s, Unprocessed Msg: %s", err.Error(), string(data))
}
exportOnosAaaKPI(kpi)
default:
- logger.Warn("Unexpected export. Should not come here")
+ logger.Warn("Unexpected export. Topic [%s] not supported. Should not come here", *topic)
}
}
diff --git a/topic-listener.go b/topic-listener.go
index 9b0f2dc..47003e8 100644
--- a/topic-listener.go
+++ b/topic-listener.go
@@ -28,8 +28,8 @@
defer wg.Done()
consumer, err := master.ConsumePartition(*topic, 0, sarama.OffsetOldest)
if err != nil {
- logger.Error("topicListener panic")
- panic(err)
+ logger.Error("topicListener panic, topic=[%s]: %s", *topic, err.Error())
+ return
}
signals := make(chan os.Signal, 1)
signal.Notify(signals, os.Interrupt)
@@ -38,9 +38,9 @@
for {
select {
case err := <-consumer.Errors():
- logger.Error("%s", err)
+ logger.Error("Consumer error: %s", err.Err)
case msg := <-consumer.Messages():
- logger.Debug("Message on %s: %s", *topic, string(msg.Value))
+ logger.Debug("Got message on topic=[%s]: %s", *topic, string(msg.Value))
export(topic, msg.Value)
case <-signals:
logger.Warn("Interrupt is detected")