liuxiaolong
2020-11-16 4e53005539afe577e6b3cb9b599b532412c84c4e
logger.go
@@ -4,10 +4,25 @@
   "github.com/natefinch/lumberjack"
   "go.uber.org/zap"
   "go.uber.org/zap/zapcore"
   "os"
   "strings"
   "time"
)
var logger *zap.SugaredLogger
type BLog struct {
   logger *zap.SugaredLogger
}
func (l *BLog) Write(buf []byte) (n int, err error) {
   l.logger.Debug(strings.Replace(string(buf),"\n","", -1))
   return len(buf),nil
}
func GetLogFile() *BLog {
   return  blog
}
var blog *BLog
const (
   DebugLevel = iota -1
@@ -19,6 +34,14 @@
   FatalLevel
)
func InitLogger(logPath string, logLevel int,maxSize int, maxBackups int, maxAge int) {
   logdir := "./logger/"
   if index := strings.LastIndex(logPath, "/"); index != -1 {
      logdir = logPath[0:index] + "/"
   }
   fi,err := os.Stat(logdir)
   if !((err == nil || os.IsExist(err)) && fi.IsDir()) {
      os.MkdirAll(logdir, os.ModePerm)
   }
   hook := lumberjack.Logger {
      Filename: logPath,   //日志文件的位置
      MaxSize: maxSize,       //在进行切割之前,日志文件的最大大小(以MB为单位)
@@ -62,38 +85,48 @@
      level,
   )
   log := zap.New(core, zap.AddCaller(), zap.AddCallerSkip(1))
   logger = log.Sugar()
   logger.Info("init logger success")
   blog = &BLog{
      logger: log.Sugar(),
   }
   blog.logger.Info("init logger success")
}
func Debug(v ...interface{}) {
   logger.Debug(v...)
   blog.logger.Debug(v...)
}
func Debugf(template string, v ...interface{}) {
   logger.Debugf(template, v...)
   blog.logger.Debugf(template, v...)
}
func Info(v ...interface{}) {
   logger.Info(v)
   blog.logger.Info(v)
}
func Infof(template string, v ...interface{}) {
   logger.Infof(template, v...)
   blog.logger.Infof(template, v...)
}
func Warn(v ...interface{}) {
   logger.Warn(v...)
   blog.logger.Warn(v...)
}
func Warnf(template string, v ...interface{}) {
   logger.Warnf(template, v...)
   blog.logger.Warnf(template, v...)
}
func Error(v ...interface{}) {
   logger.Error(v...)
   blog.logger.Error(v...)
}
func Errorf(template string, v ...interface{}) {
   logger.Errorf(template, v...)
}
   blog.logger.Errorf(template, v...)
}
func Fatal(v ...interface{}) {
   blog.logger.Fatal(v...)
}
func Fatalf(template string, v ...interface{}) {
   blog.logger.Fatalf(template, v...)
}