clear_logs_job.go 525 B

12345678910111213141516171819202122232425
  1. package job
  2. import (
  3. "os"
  4. "x-ui/logger"
  5. "x-ui/xray"
  6. )
  7. type ClearLogsJob struct{}
  8. func NewClearLogsJob() *ClearLogsJob {
  9. return new(ClearLogsJob)
  10. }
  11. // Here Run is an interface method of the Job interface
  12. func (j *ClearLogsJob) Run() {
  13. logFiles := []string{xray.GetIPLimitLogPath(), xray.GetIPLimitBannedLogPath(), xray.GetAccessPersistentLogPath()}
  14. // clear log files
  15. for i := 0; i < len(logFiles); i++ {
  16. if err := os.Truncate(logFiles[i], 0); err != nil {
  17. logger.Warning("clear logs job err:", err)
  18. }
  19. }
  20. }