lclog.go 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. package logger
  2. import (
  3. "github.com/druidcaesa/gotool"
  4. rotatelogs "github.com/lestrrat/go-file-rotatelogs"
  5. "github.com/sirupsen/logrus"
  6. "iot_manager_service/config"
  7. "iot_manager_service/util/es"
  8. "os"
  9. "path"
  10. "time"
  11. )
  12. var Logger *logrus.Logger
  13. func InitLog() {
  14. //logFilePath := config.Instance().Logger.Path
  15. //logFileName := config.Instance().Logger.Name
  16. //err := os.MkdirAll(logFilePath, os.ModeDir)
  17. //if err != nil {
  18. // gotool.Logs.ErrorLog().Println(err)
  19. // panic(err)
  20. //}
  21. // 日志文件
  22. //fileName := path.Join(logFilePath, logFileName)
  23. //writer, _ := rotatelogs.New(
  24. // fileName+".%Y%m%d.log",
  25. // rotatelogs.WithMaxAge(15*24*time.Hour), // 文件最大保存时间
  26. // rotatelogs.WithRotationTime(24*time.Hour), // 日志切割时间间隔
  27. //)
  28. if config.Instance().Logger.Switch == 0 {
  29. logFilePath := config.Instance().Logger.Path
  30. logFileName := config.Instance().Logger.Name
  31. err := os.MkdirAll(logFilePath, os.ModeDir)
  32. if err != nil {
  33. gotool.Logs.ErrorLog().Println(err)
  34. panic(err)
  35. }
  36. // 日志文件
  37. fileName := path.Join(logFilePath, logFileName)
  38. writer, _ := rotatelogs.New(
  39. fileName+".%Y%m%d.log",
  40. rotatelogs.WithMaxAge(15*24*time.Hour), // 文件最大保存时间
  41. rotatelogs.WithRotationTime(24*time.Hour), // 日志切割时间间隔
  42. )
  43. // 实例化
  44. logger := logrus.New()
  45. logger.SetFormatter(&logrus.JSONFormatter{
  46. TimestampFormat: "2006-01-02 15:04:05.000",
  47. })
  48. // 设置日志级别
  49. logger.SetLevel(logrus.DebugLevel)
  50. logger.SetOutput(writer)
  51. Logger = logger
  52. } else {
  53. es.Es.InitES()
  54. // 实例化
  55. logger := logrus.New()
  56. logger.SetFormatter(&logrus.JSONFormatter{
  57. TimestampFormat: "2006-01-02 15:04:05.000",
  58. })
  59. // 设置日志级别
  60. logger.SetLevel(logrus.DebugLevel)
  61. logger.SetOutput(es.EWriter)
  62. Logger = logger
  63. }
  64. }