|
@@ -109,8 +109,9 @@ func checkCollectLimit() {
|
|
|
continue
|
|
|
}
|
|
|
if resp.Code != 200 { // 不是200 代表采集数量已超过限额不允许采集
|
|
|
- //c_log.GlobalLogger.Info("采集数量已超过限额,当前周期内不再采集。", resp.Code)
|
|
|
+ c_log.GlobalLogger.Info("采集数量已超过限额,", resp.Code)
|
|
|
limitReachedFlag = true
|
|
|
+ continue
|
|
|
}
|
|
|
}
|
|
|
limitReachedFlag = false
|
|
@@ -132,7 +133,7 @@ func initRenew() {
|
|
|
func renew() {
|
|
|
for {
|
|
|
time.Sleep(time.Duration(renewTurnLength) * time.Second)
|
|
|
- if localStatus == "running" && launchedFlag && !renewedFlag { // 设备处于运行状态,数采程序已启动,且尚未续约
|
|
|
+ if localStatus == "running" && launchedFlag && !renewedFlag && timeAllowedFlag && !limitReachedFlag { // 设备处于运行状态,数采程序已启动,且尚未续约
|
|
|
c_log.GlobalLogger.Info("设备仍处于运行状态,续约 - 开始。")
|
|
|
if renewTimer != nil {
|
|
|
renewTimer.Stop()
|
|
@@ -203,7 +204,7 @@ func main() {
|
|
|
go pkg.GetCloudStatus(&cloudStatus, &lastCloudStatus, cloudTurnLength)
|
|
|
|
|
|
// 定期检查本地任务状态,执行续约,避免短时间内多次启停
|
|
|
- go renew()
|
|
|
+ //go renew() // 室外机器人关闭续约
|
|
|
|
|
|
// 检查是否达到限额
|
|
|
go checkCollectLimit()
|
|
@@ -220,6 +221,7 @@ func main() {
|
|
|
|
|
|
fmt.Println("localStatus: ", localStatus, "lastLocalStatus: ", lastLocalStatus)
|
|
|
fmt.Println("cloudStatus: ", cloudStatus, "lastCloudStatus: ", lastCloudStatus)
|
|
|
+ fmt.Println("limitReachedFlag: ", limitReachedFlag, "timeAllowedFlag: ", timeAllowedFlag)
|
|
|
|
|
|
// 采集时间限制
|
|
|
currentTime := time.Now()
|
|
@@ -238,12 +240,11 @@ func main() {
|
|
|
// error 错误状态,此状态下不启动数采任务
|
|
|
|
|
|
// 启停master
|
|
|
- if localStatus == "running" && timeAllowedFlag && !limitReachedFlag {
|
|
|
- if !launchedFlag { // 目前未启动数采程序
|
|
|
- c_log.GlobalLogger.Info("数采程序启动 - 开始。")
|
|
|
- startMasterNode()
|
|
|
- }
|
|
|
- } else if localStatus == "idle" || !timeAllowedFlag || !limitReachedFlag {
|
|
|
+ if localStatus == "running" && timeAllowedFlag && !limitReachedFlag && !launchedFlag {
|
|
|
+ // 目前未启动数采程序
|
|
|
+ c_log.GlobalLogger.Info("数采程序启动 - 开始。")
|
|
|
+ startMasterNode()
|
|
|
+ } else if localStatus == "idle" || !timeAllowedFlag || limitReachedFlag {
|
|
|
if !renewedFlag && launchedFlag && len(entity.TimeWindowConsumerQueue) == 0 {
|
|
|
time.Sleep(time.Duration(waitStopLength) * time.Minute)
|
|
|
c_log.GlobalLogger.Info("数采程序关闭 - 开始。")
|
|
@@ -252,8 +253,6 @@ func main() {
|
|
|
} else if localStatus == "error" {
|
|
|
c_log.GlobalLogger.Error("设备运行状态出错,停止数采程序。")
|
|
|
stopMasterNode()
|
|
|
- } else {
|
|
|
- c_log.GlobalLogger.Error("未知的设备运行状态。【status】=", localStatus)
|
|
|
}
|
|
|
}
|
|
|
}
|