Просмотр исходного кода

fix: test channel frequency (#2119)

Seefs 4 месяцев назад
Родитель
Сommit
158b46eb4b
2 измененных файлов с 4 добавлено и 4 удалено
  1. 1 1
      controller/channel-test.go
  2. 3 3
      setting/operation_setting/monitor_setting.go

+ 1 - 1
controller/channel-test.go

@@ -625,7 +625,7 @@ func AutomaticallyTestChannels() {
 			}
 			for {
 				frequency := operation_setting.GetMonitorSetting().AutoTestChannelMinutes
-				time.Sleep(time.Duration(frequency) * time.Minute)
+				time.Sleep(time.Duration(int(math.Round(frequency))) * time.Minute)
 				common.SysLog(fmt.Sprintf("automatically test channels with interval %d minutes", frequency))
 				common.SysLog("automatically testing all channels")
 				_ = testAllChannels(false)

+ 3 - 3
setting/operation_setting/monitor_setting.go

@@ -8,8 +8,8 @@ import (
 )
 
 type MonitorSetting struct {
-	AutoTestChannelEnabled bool `json:"auto_test_channel_enabled"`
-	AutoTestChannelMinutes int  `json:"auto_test_channel_minutes"`
+	AutoTestChannelEnabled bool    `json:"auto_test_channel_enabled"`
+	AutoTestChannelMinutes float64 `json:"auto_test_channel_minutes"`
 }
 
 // 默认配置
@@ -28,7 +28,7 @@ func GetMonitorSetting() *MonitorSetting {
 		frequency, err := strconv.Atoi(os.Getenv("CHANNEL_TEST_FREQUENCY"))
 		if err == nil && frequency > 0 {
 			monitorSetting.AutoTestChannelEnabled = true
-			monitorSetting.AutoTestChannelMinutes = frequency
+			monitorSetting.AutoTestChannelMinutes = float64(frequency)
 		}
 	}
 	return &monitorSetting