github.com/seeker-insurance/kit@v0.0.13/log/log.go (about)

     1  //Package log contains various tools for logging information and errors during runtime. It is an extension of the github.com/sirupsen/logrus package.
     2  package log
     3  
     4  import (
     5  	"github.com/davecgh/go-spew/spew"
     6  	"github.com/seeker-insurance/kit/goenv"
     7  	"github.com/pkg/errors"
     8  	log "github.com/sirupsen/logrus"
     9  )
    10  
    11  var (
    12  	//Print is an alias for log.Print in logrus
    13  	Print = log.Print
    14  
    15  	//Fatalf is an alias for log.Fatalf in logrus
    16  	Fatalf = log.Fatalf
    17  
    18  	//Fatal is an alias for log.Fatal in logrus
    19  	Fatal = log.Fatal
    20  
    21  	//Println is an alias for log.Println in logrus
    22  	Println = log.Println
    23  
    24  	//Info is an alias for log.Info in logrus
    25  	Info = log.Info
    26  
    27  	//Warn is an alias for log.Warn in logrus
    28  	Warn = log.Warn
    29  
    30  	//Warnf is an alias for log.Warnf in logrus
    31  	Warnf = log.Warnf
    32  )
    33  
    34  //FatalWrap wraps the error using errors.wrap, then calls log.fatalf
    35  func FatalWrap(err error, msg string) {
    36  	log.Fatalf("%+v", errors.Wrap(err, msg))
    37  }
    38  
    39  //Infof calls spew.Sprintf on the arguments, then logs it at the info level
    40  func Infof(format string, args ...interface{}) {
    41  	s := spew.Sprintf(format, args...)
    42  	log.Infof(s)
    43  }
    44  
    45  func Infofln(format string, args ...interface{}) {
    46  
    47  	Infof(format, args...)
    48  }
    49  
    50  func ErrorWrap(err error, msg string) {
    51  	log.Errorf("%+v", errors.Wrap(err, msg))
    52  }
    53  
    54  //Check calls Fatal on an error if it is non-nil.
    55  func Check(err error) {
    56  	if err != nil {
    57  		Fatal(err)
    58  	}
    59  }
    60  
    61  var Logger = log.StandardLogger()
    62  
    63  func init() {
    64  	if goenv.Prod {
    65  		log.SetFormatter(&log.JSONFormatter{})
    66  	}
    67  }