---
panlei
2019-11-07 52713b8d85e26a984ecaeef926c815e8cf8075b7
logger/logger.go
@@ -17,47 +17,47 @@
   InfoLevel
   DebugLevel
)
var loggerString string = ""
const (
   color_red = uint8(iota + 91)
   color_green      //   绿
   color_yellow      //   黄
   color_blue         //    蓝
   color_magenta       //   洋红
   color_green        //    绿
   color_yellow        //    黄
   color_blue            //     蓝
   color_magenta         //    洋红
)
const (
   fatalPrefix      =   "[FATAL] "
   errorPrefix      =   "[ERROR] "
   warnPrefix      =   "[WARN] "
   infoPrefix      =   "[INFO] "
   debugPrefix      =   "[DEBUG] "
   fatalPrefix        =    "[FATAL] "
   errorPrefix        =    "[ERROR] "
   warnPrefix        =    "[WARN] "
   infoPrefix        =    "[INFO] "
   debugPrefix        =    "[DEBUG] "
)
const (
   ByDay   int = iota
   ByDay    int = iota
   ByWeek
   ByMonth
   BySize
)
type LogFile struct {
   level    int      // 日志等级
   saveMode int      // 保存模式
   saveDays int      // 日志保存天数
   logTime  int64      //
   fileName string      // 日志文件名
   filesize int64      // 文件大小, 需要设置 saveMode 为 BySize 生效
   level    int        // 日志等级
   saveMode int        // 保存模式
   saveDays int        // 日志保存天数
   logTime  int64        //
   fileName string        // 日志文件名
   filesize int64        // 文件大小, 需要设置 saveMode 为 BySize 生效
   fileFd   *os.File
}
var logFile LogFile
func init()  {
   logFile.saveMode = ByDay   // 默认按天保存
   logFile.saveDays = 7      // 默认保存三天的
   logFile.saveMode = ByDay    // 默认按天保存
   logFile.saveDays = 7        // 默认保存三天的
   logFile.level = DebugLevel
   logFile.filesize = 1024 * 1024 * 10   // 默认10M, 需要设置 saveMode 为 BySize
   //logFile.filesize = 1024 * 1024 * 10    // 默认10M, 需要设置 saveMode 为 BySize
}
func Config(logFolder string, level int) {
@@ -92,6 +92,7 @@
   if logFile.level >= DebugLevel {
      log.SetPrefix(blue(debugPrefix))
      _ = log.Output(2, fmt.Sprintln(args...))
      //loggerString += fmt.Sprintln(args...)
   }
}
@@ -99,6 +100,7 @@
   if logFile.level >= InfoLevel {
      log.SetPrefix(green(infoPrefix))
      _ = log.Output(2, fmt.Sprintln(args...))
      //loggerString += fmt.Sprintln(args...)
   }
}
@@ -106,6 +108,7 @@
   if logFile.level >= WarnLevel {
      log.SetPrefix(magenta(warnPrefix))
      _ = log.Output(2, fmt.Sprintln(args...))
      //loggerString += fmt.Sprintln(args...)
   }
}
@@ -113,6 +116,7 @@
   if logFile.level >= ErrorLevel {
      log.SetPrefix(red(errorPrefix))
      _ = log.Output(2, fmt.Sprintln(args...))
      //loggerString += fmt.Sprintln(args...)
   }
}
@@ -120,7 +124,11 @@
   if logFile.level >= FatalLevel {
      log.SetPrefix(red(fatalPrefix))
      _ = log.Output(2, fmt.Sprintln(args...))
      //loggerString += fmt.Sprintln(args...)
   }
}
func OutPutByPanlei() {
   _ = log.Output(2, loggerString)
}
func GetRedPrefix(s string) string {
@@ -167,7 +175,7 @@
            logFile.logTime = time.Now().Unix()
         }
      }
   default:   // 默认按天  ByDay
   default:    // 默认按天  ByDay
      if logFile.logTime+3600 < time.Now().Unix() {
         logFile.createLogFile()
         logFile.logTime = time.Now().Unix()