log_config.go 932 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. package c_log
  2. import (
  3. "fmt"
  4. "github.com/sirupsen/logrus"
  5. "os"
  6. "path/filepath"
  7. "runtime"
  8. "time"
  9. )
  10. var GlobalLogger *logrus.Logger
  11. // InitLog 初始化日志配置
  12. func InitLog() {
  13. initGlobalLogger()
  14. }
  15. // initGlobalLogger 初始化日志配置
  16. func initGlobalLogger() {
  17. time.Sleep(time.Duration(1) * time.Second)
  18. // 创建、追加、读写,777,所有权限
  19. f, err := os.OpenFile("program-"+time.Now().Format("2006-01-02-15-04-05")+".log", os.O_CREATE|os.O_APPEND|os.O_RDWR, os.ModePerm)
  20. if err != nil {
  21. os.Exit(-1)
  22. }
  23. GlobalLogger = logrus.New()
  24. GlobalLogger.SetOutput(f)
  25. GlobalLogger.SetReportCaller(true) // 开启行号显示
  26. GlobalLogger.SetFormatter(&logrus.JSONFormatter{
  27. CallerPrettyfier: func(frame *runtime.Frame) (string, string) {
  28. fileName := filepath.Base(frame.File)
  29. return "", fmt.Sprintf("%s:%d", fileName, frame.Line)
  30. },
  31. })
  32. GlobalLogger.Info("初始化GlobalLogger - 成功")
  33. }