OrmLog.go 846 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package TimeTask
  2. import (
  3. "fmt"
  4. "github.com/robfig/cron/v3"
  5. "io/ioutil"
  6. "os"
  7. "time"
  8. )
  9. var OrmLogOrmLog *os.File
  10. // ORM 日志清理
  11. func OrmLog() {
  12. crontab := cron.New(cron.WithSeconds())
  13. ss := "1 1 1 * * *"
  14. _, err := crontab.AddFunc(ss, OrmLog_MonitorScanStatus)
  15. if err != nil {
  16. fmt.Printf("err: %v\n", err)
  17. fmt.Println("初始化成功")
  18. }
  19. crontab.Start()
  20. defer crontab.Stop()
  21. select {}
  22. }
  23. func OrmLog_MonitorScanStatus() {
  24. fmt.Println("------- ORM 日志清理 --------")
  25. data, err := ioutil.ReadFile(OrmLogOrmLog.Name())
  26. if err != nil {
  27. fmt.Printf("文件打开失败=%v\n", err)
  28. return
  29. }
  30. err = ioutil.WriteFile("logs/orm/logx_"+time.Now().Format("2006-01-02") +".log", data, 0666)
  31. if err != nil {
  32. fmt.Printf("文件打开失败=%v\n", err)
  33. }
  34. fmt.Println("清空:",os.Truncate(OrmLogOrmLog.Name(), 0))
  35. }