|
@@ -2,9 +2,11 @@ package main
|
|
|
|
|
|
import (
|
|
|
"cicv-data-closedloop/common/config/c_log"
|
|
|
+ "cicv-data-closedloop/kinglong/common/cfg"
|
|
|
commonConfig "cicv-data-closedloop/pji/common/cfg"
|
|
|
commonService "cicv-data-closedloop/pji/common/svc"
|
|
|
controlConfig "cicv-data-closedloop/pji/control/package/cfg"
|
|
|
+ "net/rpc"
|
|
|
"runtime"
|
|
|
"time"
|
|
|
)
|
|
@@ -22,7 +24,6 @@ func init() {
|
|
|
// 首先初始化平台配置。
|
|
|
commonConfig.InitPlatformConfig()
|
|
|
// 初始化rpc客户端,用于杀死旧的采集程序
|
|
|
- controlConfig.InitRpcClient()
|
|
|
controlConfig.InitNacos()
|
|
|
}
|
|
|
|
|
@@ -30,7 +31,7 @@ func main() {
|
|
|
|
|
|
// 轮询任务接口判断是否有更新
|
|
|
for {
|
|
|
- time.Sleep(time.Duration(1) * time.Second)
|
|
|
+ time.Sleep(time.Duration(2) * time.Second)
|
|
|
// 1 获取当前设备的任务的 status
|
|
|
status, err := commonConfig.GetStatus(commonConfig.PlatformConfig.TaskConfigId)
|
|
|
if err != nil {
|
|
@@ -41,7 +42,6 @@ func main() {
|
|
|
// UN_CHANGE 没有新的任务,无需更改
|
|
|
// CHANGE 有新的任务,需要杀死旧的任务并重启
|
|
|
// NONE 设备没有配置任务,需要杀死旧的任务
|
|
|
- c_log.GlobalLogger.Info("当前任务状态为【status】=", status)
|
|
|
if status == "UN_CHANGE" {
|
|
|
continue
|
|
|
} else if status == "CHANGE" || status == "NONE" {
|
|
@@ -55,14 +55,24 @@ func main() {
|
|
|
c_log.GlobalLogger.Info("杀死任务,发送rpc结束信号。")
|
|
|
masterArgs = &commonService.KillSignal{NodeName: "master", DropUploadData: commonConfig.PlatformConfig.DropUploadData, Restart: false}
|
|
|
}
|
|
|
- var reply int
|
|
|
- err = controlConfig.KillRpcClient.Call("KillService.Kill", masterArgs, &reply)
|
|
|
+
|
|
|
+ KillRpcClient, err := rpc.Dial("tcp", cfg.CloudConfig.Hosts[0].Ip+":"+cfg.CloudConfig.RpcPort)
|
|
|
+ if err != nil {
|
|
|
+ c_log.GlobalLogger.Error("创建rpc连接master失败:", err)
|
|
|
+ KillRpcClient.Close()
|
|
|
+ continue
|
|
|
+ }
|
|
|
+
|
|
|
+ reply := 0
|
|
|
+ err = KillRpcClient.Call("KillService.Kill", masterArgs, &reply)
|
|
|
if err != nil {
|
|
|
c_log.GlobalLogger.Error("发送rpc请求到master失败:", err)
|
|
|
+ KillRpcClient.Close()
|
|
|
continue
|
|
|
}
|
|
|
// 获取一下最新配置
|
|
|
commonConfig.InitPlatformConfig()
|
|
|
+ KillRpcClient.Close()
|
|
|
} else {
|
|
|
c_log.GlobalLogger.Error("未知的采集任务状态。status=", status)
|
|
|
}
|