github.com/gofunct/common@v0.0.0-20190131174352-fd058c7fbf22/pkg/zap/logger.go (about)

     1  package zap
     2  
     3  import (
     4  	"github.com/pkg/errors"
     5  	"go.uber.org/zap"
     6  )
     7  
     8  func init() {
     9  	zap.ReplaceGlobals(L)
    10  }
    11  
    12  var L, _ = zap.NewDevelopment()
    13  
    14  // LogF logs fatal "msg: err" in case of error
    15  func LogF(msg string, err error) {
    16  	if err != nil {
    17  		L.Fatal(msg, zap.Error(err))
    18  	}
    19  }
    20  
    21  // LogE logs error "msg: err" in case of error
    22  func LogE(msg string, err error) {
    23  	if err != nil {
    24  		L.Info(msg, zap.Error(err))
    25  	}
    26  }
    27  
    28  // LogE logs error "msg: err" in case of error
    29  func LogW(msg string, err error) {
    30  	if err != nil {
    31  		L.Warn(msg, zap.Error(err))
    32  	}
    33  }
    34  
    35  // LogE logs error "msg: err" in case of error
    36  func With(k, v string) {
    37  	L.With(zap.String(k, v))
    38  }
    39  
    40  // LogE logs error "msg: err" in case of error
    41  func Debug(msg string, k, v string) {
    42  	L.Debug(msg, zap.String(k, v))
    43  }
    44  
    45  func Close() func() error {
    46  	return func() error {
    47  		return L.Sync()
    48  	}
    49  }
    50  
    51  func StackF(msg string, err error) {
    52  	if err != nil {
    53  		L.Fatal(msg, zap.Error(errors.WithStack(err)))
    54  	}
    55  }