package icsbatch import ( "fmt" "log" "mybatch/icsconf" "mybatch/icslog" stt "mybatch/icsstt" "time" "github.com/robfig/cron/v3" ) var ( cfg icsconf.AppInfo l *log.Logger ) func init() { cfg = icsconf.Getconfig() l = icslog.InitializeLogger() } func BatchForPostRequestForDataList() { loc, err := time.LoadLocation("Asia/Seoul") if err != nil { l.Fatalln("타임존 로드 실패: ", err) } cronInstance := cron.New(cron.WithLocation(loc)) // 매일 새벽 1시에 동작하는 크론인스턴스 추가 _, err = cronInstance.AddFunc("0 1 * * *", func() { l.Println("calling ProcessPostRequestForDataList()") stt.ProcessPostRequestForDataList() }) if err != nil { fmt.Println("스케줄 추가 오류:", err) return } cronInstance.Start() select {} } func BatchForPostRequestForDataListTest() { loc, err := time.LoadLocation("Asia/Seoul") if err != nil { l.Fatalln("타임존 로드 실패: ", err) } cronInstance := cron.New(cron.WithLocation(loc)) _, err = cronInstance.AddFunc("51 12 * * *", func() { l.Println("current server time: ", time.Now().Format("2006-01-02 15:04:05")) fmt.Println("test succeeded") }) if err != nil { fmt.Println("스케줄 추가 오류:", err) return } cronInstance.Start() select {} }