fix: 网元重启接口
This commit is contained in:
@@ -2,7 +2,6 @@ package controller
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"nms_cxy/src/framework/config"
|
|
||||||
"nms_cxy/src/framework/i18n"
|
"nms_cxy/src/framework/i18n"
|
||||||
"nms_cxy/src/framework/utils/cmd"
|
"nms_cxy/src/framework/utils/cmd"
|
||||||
"nms_cxy/src/framework/utils/ctx"
|
"nms_cxy/src/framework/utils/ctx"
|
||||||
@@ -12,8 +11,7 @@ import (
|
|||||||
neService "nms_cxy/src/modules/network_element/service"
|
neService "nms_cxy/src/modules/network_element/service"
|
||||||
"nms_cxy/src/modules/nms_cxy/service"
|
"nms_cxy/src/modules/nms_cxy/service"
|
||||||
"nms_cxy/src/modules/nms_cxy/utils/common"
|
"nms_cxy/src/modules/nms_cxy/utils/common"
|
||||||
|
"strings"
|
||||||
"time"
|
|
||||||
|
|
||||||
"github.com/gin-gonic/gin"
|
"github.com/gin-gonic/gin"
|
||||||
)
|
)
|
||||||
@@ -244,8 +242,12 @@ func (s *SystemController) RebootApp(c *gin.Context) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
cmdStr := fmt.Sprintf("sleep 2s && sudo service %s restart", strings.ToLower(neInfo.NeType))
|
||||||
|
if neInfo.NeType == "IMS" {
|
||||||
|
cmdStr = "sleep 2s && sudo ims-start restart"
|
||||||
|
}
|
||||||
go func() {
|
go func() {
|
||||||
_, err := cmd.ExecWithCheck("nohup", "sh", "-c", "sleep 2s && service omc restart", "> /dev/null 2>&1 &\n")
|
_, err := cmd.ExecWithCheck("nohup", "sh", "-c", cmdStr, "> /dev/null 2>&1 &\n")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Printf("NE service reboot error %s \n", err.Error())
|
fmt.Printf("NE service reboot error %s \n", err.Error())
|
||||||
}
|
}
|
||||||
@@ -279,9 +281,16 @@ func (s *SystemController) RebootState(c *gin.Context) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取程序运行时间
|
cmdStr := fmt.Sprintf(`systemctl status %s | grep -oP 'Active: \K[^ ]+'`, strings.ToLower(neInfo.NeType))
|
||||||
runTime := time.Since(config.RunTime()).Abs().Seconds()
|
if neInfo.NeType == "IMS" {
|
||||||
if runTime > 120 {
|
cmdStr = `ims-status | grep -oP 'state: \K[^ ]+'`
|
||||||
|
}
|
||||||
|
output, err := cmd.ExecWithCheck("sudo", cmdStr)
|
||||||
|
if err != nil {
|
||||||
|
fmt.Printf("NE service reboot error %s \n", err.Error())
|
||||||
|
}
|
||||||
|
|
||||||
|
if strings.Contains(output, "inactive") {
|
||||||
c.JSON(200, map[string]any{
|
c.JSON(200, map[string]any{
|
||||||
"requestId": body.RequestId,
|
"requestId": body.RequestId,
|
||||||
"status": "fail",
|
"status": "fail",
|
||||||
|
|||||||
Reference in New Issue
Block a user