|
@@ -18,6 +18,7 @@ type HeartBeatInfo struct {
|
|
|
var lastTime time.Time
|
|
|
|
|
|
func main() {
|
|
|
+
|
|
|
// 1 启动 shell 脚本 dpi_start.sh
|
|
|
_, s, err := util.ExecuteWithDirSync("/data", "sh", "dpi_start.sh")
|
|
|
if err != nil {
|
|
@@ -35,14 +36,18 @@ func main() {
|
|
|
lastTime = time.Now()
|
|
|
}})
|
|
|
// 3 超过5秒没有接收到数据则执行 dpi_stop.sh 和 dpi_start.sh
|
|
|
- if time.Since(lastTime) > 5.00 {
|
|
|
- _, s, err = util.ExecuteWithDirSync("/data", "sh", "dpi_stop.sh")
|
|
|
- if err != nil {
|
|
|
- fmt.Println("执行停止命令报错,执行结果为:", s, ",错误信息为:", err)
|
|
|
- }
|
|
|
- _, s, err = util.ExecuteWithDirSync("/data", "sh", "dpi_start.sh")
|
|
|
- if err != nil {
|
|
|
- fmt.Println("执行启动命令报错,执行结果为:", s, ",错误信息为:", err)
|
|
|
+ for {
|
|
|
+ time.Sleep(1 * time.Second)
|
|
|
+ if time.Since(lastTime) > 5.00 {
|
|
|
+ fmt.Println("超过5秒没有监听到/heart_info数据,即将重启dpi。")
|
|
|
+ _, s, err = util.ExecuteWithDirSync("/data", "sh", "dpi_stop.sh")
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("执行停止命令报错,执行结果为:", s, ",错误信息为:", err)
|
|
|
+ }
|
|
|
+ _, s, err = util.ExecuteWithDirSync("/data", "sh", "dpi_start.sh")
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("执行启动命令报错,执行结果为:", s, ",错误信息为:", err)
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|