1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- package backup
- import (
- "log"
- "time"
- "strings"
- "box-gm/utils"
- )
- func getNextTime(now time.Time, startTime string) time.Time {
- arr := strings.Split(startTime, ":")
- hour := utils.StringToInt(arr[0])
- min := utils.StringToInt(arr[1])
- sec := utils.StringToInt(arr[2])
- next := time.Date(now.Year(), now.Month(), now.Day(), hour, min, sec, 0, now.Location())
- if now.Before(next) {
- return next
- }
- next = now.Add(time.Hour * 24)
- next = time.Date(next.Year(), next.Month(), next.Day(), hour, min, sec, 0, next.Location())
- return next
- }
- // 备份程序初始化
- func Init_backup_event_proc() {
- for {
- now := time.Now()
- //返回一个指定时间的下次执行的时间戳
- timeBackup := utils.GetKeyConf("backup", "time_event")
- if timeBackup == "" {
- break
- }
- next := getNextTime(now, timeBackup)
- t := time.NewTimer(next.Sub(now))
- log.Printf("下一次日志备份开始时间为[%s]", next.String())
- <-t.C
- log.Println("备份日志")
- go run_event_backup()
- }
- }
- // 开始备份
- func run_event_backup() {
- }
|