Merge pull request #17057 from gouqi11/fixExcelutilsStyle

fix(region): snapshot code tidy
This commit is contained in:
Zexi Li
2023-05-18 18:06:16 +08:00
committed by GitHub
3 changed files with 11 additions and 14 deletions
+9 -9
View File
@@ -1265,19 +1265,19 @@ func (manager *SSnapshotManager) DataCleaning(ctx context.Context, userCred mccl
}
func dataCleaning(tableName string) error {
now := time.Now()
monthsDaysAgo := now.AddDate(0, 0, -options.Options.KeepDeletedSnapshotDays).Format("2006-01-02 15:04:05")
sqlStr := fmt.Sprintf(
"delete from %s where deleted = 1 and deleted_at < '%s'",
tableName,
monthsDaysAgo,
if options.Options.KeepDeletedSnapshotDays <= 0 {
return nil
}
_, err := sqlchemy.GetDB().Exec(
fmt.Sprintf(
"delete from %s where deleted = 1 and deleted_at < ?",
tableName,
), time.Now().AddDate(0, 0, -options.Options.KeepDeletedSnapshotDays),
)
q := sqlchemy.NewRawQuery(sqlStr)
rows, err := q.Rows()
if err != nil {
return errors.Wrapf(err, "unable to delete expired data in %q", tableName)
}
defer rows.Close()
log.Infof("delete expired data in %q successfully", tableName)
return nil
}
+1 -2
View File
@@ -187,8 +187,7 @@ type ComputeOptions struct {
DefaultIPAllocationDirection string `help:"default IP allocation direction" default:"stepdown"`
CleanupSnapshots bool `help:"create a cronjob to cleaning snapshots every day" default:"true"`
KeepDeletedSnapshotDays int `help:"The day of cleanup snapshot" default:"30"`
KeepDeletedSnapshotDays int `help:"The day of cleanup snapshot" default:"30"`
// 弹性伸缩中的ecs一般会有特殊的系统标签,通过指定这些标签可以忽略这部分ecs的同步, 指定多个key需要以 ',' 分隔
SkipServerBySysTagKeys string `help:"skip server,disk sync and create with system tags" default:"acs:autoscaling:scalingGroupId"`
SkipServerByUserTagKeys string `help:"skip server,disk sync and create with user tags" default:""`
+1 -3
View File
@@ -186,9 +186,7 @@ func StartService() {
cron.AddJobEveryFewDays("SyncElasticCacheSkus", opts.SyncSkusDay, opts.SyncSkusHour, 0, 0, models.SyncElasticCacheSkus, true)
cron.AddJobEveryFewDays("StorageSnapshotsRecycle", 1, 2, 0, 0, models.StorageManager.StorageSnapshotsRecycle, false)
if options.Options.CleanupSnapshots {
cron.AddJobEveryFewDays("SnapshotDataCleaning", 1, 0, 0, 0, models.SnapshotManager.DataCleaning, true)
}
cron.AddJobEveryFewDays("SnapshotDataCleaning", 1, 0, 0, 0, models.SnapshotManager.DataCleaning, true)
cron.AddJobAtIntervalsWithStartRun("SyncCloudImages", time.Duration(opts.CloudImagesSyncIntervalHours)*time.Hour, models.SyncPublicCloudImages, true)