|
@@ -1,103 +0,0 @@
|
|
|
-package logger
|
|
|
-
|
|
|
-import (
|
|
|
- "github.com/0xJacky/Nginx-UI/settings"
|
|
|
- "github.com/gin-gonic/gin"
|
|
|
- "go.uber.org/zap"
|
|
|
- "go.uber.org/zap/zapcore"
|
|
|
- "os"
|
|
|
-)
|
|
|
-
|
|
|
-var logger *zap.SugaredLogger
|
|
|
-
|
|
|
-func init() {
|
|
|
- // First, define our level-handling logic.
|
|
|
- highPriority := zap.LevelEnablerFunc(func(lvl zapcore.Level) bool {
|
|
|
- return lvl >= zapcore.ErrorLevel
|
|
|
- })
|
|
|
- lowPriority := zap.LevelEnablerFunc(func(lvl zapcore.Level) bool {
|
|
|
- switch settings.ServerSettings.RunMode {
|
|
|
- case gin.ReleaseMode:
|
|
|
- return lvl >= zapcore.InfoLevel && lvl < zapcore.ErrorLevel
|
|
|
- default:
|
|
|
- fallthrough
|
|
|
- case gin.DebugMode:
|
|
|
- return lvl < zapcore.ErrorLevel
|
|
|
- }
|
|
|
- })
|
|
|
-
|
|
|
- // Directly output to stdout and stderr, and add caller information.
|
|
|
- consoleDebugging := zapcore.Lock(os.Stdout)
|
|
|
- consoleErrors := zapcore.Lock(os.Stderr)
|
|
|
- encoderConfig := zap.NewDevelopmentEncoderConfig()
|
|
|
- encoderConfig.EncodeTime = zapcore.TimeEncoderOfLayout("2006-01-02 15:04:05")
|
|
|
- encoderConfig.ConsoleSeparator = "\t"
|
|
|
- encoderConfig.EncodeLevel = colorLevelEncoder
|
|
|
- consoleEncoder := zapcore.NewConsoleEncoder(encoderConfig)
|
|
|
-
|
|
|
- // Join the outputs, encoders, and level-handling functions into
|
|
|
- // zapcore.Cores, then tee the two cores together.
|
|
|
- core := zapcore.NewTee(
|
|
|
- zapcore.NewCore(consoleEncoder, consoleErrors, highPriority),
|
|
|
- zapcore.NewCore(consoleEncoder, consoleDebugging, lowPriority),
|
|
|
- )
|
|
|
-
|
|
|
- // From a zapcore.Core, it's easy to construct a Logger.
|
|
|
- logger = zap.New(core, zap.AddCaller()).WithOptions(zap.AddCallerSkip(1)).Sugar()
|
|
|
-}
|
|
|
-
|
|
|
-func Sync() {
|
|
|
- _ = logger.Sync()
|
|
|
-}
|
|
|
-
|
|
|
-func GetLogger() *zap.SugaredLogger {
|
|
|
- return logger
|
|
|
-}
|
|
|
-
|
|
|
-func Info(args ...interface{}) {
|
|
|
- logger.Infoln(args...)
|
|
|
-}
|
|
|
-
|
|
|
-func Error(args ...interface{}) {
|
|
|
- logger.Errorln(args...)
|
|
|
-}
|
|
|
-
|
|
|
-func Fatal(args ...interface{}) {
|
|
|
- logger.Fatalln(args...)
|
|
|
-}
|
|
|
-
|
|
|
-func Warn(args ...interface{}) {
|
|
|
- logger.Warnln(args...)
|
|
|
-}
|
|
|
-
|
|
|
-func Debug(args ...interface{}) {
|
|
|
- logger.Debugln(args...)
|
|
|
-}
|
|
|
-
|
|
|
-func DPanic(args ...interface{}) {
|
|
|
- logger.DPanic(args...)
|
|
|
-}
|
|
|
-
|
|
|
-func Infof(format string, args ...interface{}) {
|
|
|
- logger.Infof(format, args...)
|
|
|
-}
|
|
|
-
|
|
|
-func Errorf(format string, args ...interface{}) {
|
|
|
- logger.Errorf(format, args...)
|
|
|
-}
|
|
|
-
|
|
|
-func Fatalf(format string, args ...interface{}) {
|
|
|
- logger.Fatalf(format, args...)
|
|
|
-}
|
|
|
-
|
|
|
-func DPanicf(format string, args ...interface{}) {
|
|
|
- logger.DPanicf(format, args...)
|
|
|
-}
|
|
|
-
|
|
|
-func Warnf(format string, args ...interface{}) {
|
|
|
- logger.Warnf(format, args...)
|
|
|
-}
|
|
|
-
|
|
|
-func Debugf(format string, args ...interface{}) {
|
|
|
- logger.Debugf(format, args...)
|
|
|
-}
|