Recover possible panic in EncodeMsg and improve debug logs
[govpp.git] / core / log.go
1 package core
2
3 import (
4         "os"
5
6         logger "github.com/sirupsen/logrus"
7 )
8
9 var (
10         debug       = os.Getenv("DEBUG_GOVPP") != ""
11         debugMsgIDs = os.Getenv("DEBUG_GOVPP_MSGIDS") != ""
12
13         log = logger.New() // global logger
14 )
15
16 // init initializes global logger, which logs debug level messages to stdout.
17 func init() {
18         log.Out = os.Stdout
19         if debug {
20                 log.Level = logger.DebugLevel
21         }
22 }
23
24 // SetLogger sets global logger to l.
25 func SetLogger(l *logger.Logger) {
26         log = l
27 }
28
29 // SetLogLevel sets global logger level to lvl.
30 func SetLogLevel(lvl logger.Level) {
31         log.Level = lvl
32 }