logger.go 889 B

123456789101112131415161718192021222324252627282930313233
  1. package logger
  2. import (
  3. "os"
  4. "time"
  5. "github.com/rs/zerolog"
  6. "github.com/rs/zerolog/log"
  7. )
  8. // InitLogger 初始化日志
  9. func InitLogger(logMode string, logLevel zerolog.Level) {
  10. if logMode == "color" { // 控制台模式 + 彩色输出
  11. consoleWriter := zerolog.ConsoleWriter{
  12. Out: os.Stdout,
  13. TimeFormat: time.RFC3339,
  14. }
  15. // 默认 Info 级别
  16. log.Logger = log.Output(consoleWriter).Level(logLevel)
  17. } else if logMode == "standard" { // 生产模式:标准 JSON 日志
  18. // 生产模式:标准 JSON 日志
  19. zerolog.TimeFieldFormat = zerolog.TimeFormatUnix
  20. log.Logger = log.Output(os.Stdout).Level(logLevel)
  21. } else {
  22. // 默认模式:控制台模式 + 彩色输出
  23. consoleWriter := zerolog.ConsoleWriter{
  24. Out: os.Stdout,
  25. TimeFormat: time.RFC3339,
  26. }
  27. // 默认 Info 级别
  28. log.Logger = log.Output(consoleWriter).Level(logLevel)
  29. }
  30. }