Add SetLogger for setting global logger
[govpp.git] / adapter / socketclient / socketclient.go
index f63e8b8..637bd69 100644 (file)
@@ -19,7 +19,6 @@ import (
        "encoding/binary"
        "errors"
        "fmt"
-       "git.fd.io/govpp.git/adapter/socketclient/binapi/memclnt"
        "io"
        "net"
        "os"
@@ -32,6 +31,7 @@ import (
        "github.com/sirupsen/logrus"
 
        "git.fd.io/govpp.git/adapter"
+       "git.fd.io/govpp.git/binapi/memclnt"
        "git.fd.io/govpp.git/codec"
 )
 
@@ -56,16 +56,21 @@ var (
        debug       = strings.Contains(os.Getenv("DEBUG_GOVPP"), "socketclient")
        debugMsgIds = strings.Contains(os.Getenv("DEBUG_GOVPP"), "msgtable")
 
-       logger = logrus.New()
-       log    = logger.WithField("logger", "govpp/socketclient")
+       log logrus.FieldLogger
 )
 
-// init initializes global logger
+// SetLogger sets global logger.
+func SetLogger(logger logrus.FieldLogger) {
+       log = logger
+}
+
 func init() {
+       logger := logrus.New()
        if debug {
                logger.Level = logrus.DebugLevel
-               log.Debug("govpp: debug level enabled for socketclient")
+               logger.Debug("govpp: debug level enabled for socketclient")
        }
+       log = logger.WithField("logger", "govpp/socketclient")
 }
 
 const socketMissing = `