feat: 新增ping 网元端版本信息检查接口
This commit is contained in:
@@ -23,15 +23,8 @@ type IPerf struct{}
|
||||
|
||||
// Version 查询版本信息
|
||||
func (s *IPerf) Version(meType, neId string) (string, error) {
|
||||
// 网元主机的SSH客户端
|
||||
sshClient, err := neService.NewNeInfo.NeRunSSHClient(meType, neId)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
defer sshClient.Close()
|
||||
|
||||
// 检查是否安装iperf3
|
||||
output, err := sshClient.RunCMD("iperf3 --version")
|
||||
output, err := neService.NewNeInfo.NeRunSSHCmd(meType, neId, "iperf3 --version")
|
||||
if err != nil {
|
||||
return "", fmt.Errorf("iperf3 not installed")
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import (
|
||||
"be.ems/src/framework/logger"
|
||||
"be.ems/src/framework/utils/ssh"
|
||||
"be.ems/src/framework/vo/result"
|
||||
neService "be.ems/src/modules/network_element/service"
|
||||
"be.ems/src/modules/tool/model"
|
||||
wsModel "be.ems/src/modules/ws/model"
|
||||
probing "github.com/prometheus-community/pro-bing"
|
||||
@@ -134,8 +135,18 @@ func (s *Ping) StatisticsOn(client *wsModel.WSClient, reqMsg wsModel.WSRequest)
|
||||
}
|
||||
}
|
||||
|
||||
// RunNE 接收ping终端交互业务处理
|
||||
func (s *Ping) RunNE(client *wsModel.WSClient, reqMsg wsModel.WSRequest) {
|
||||
// Version 查询版本信息
|
||||
func (s *Ping) Version(meType, neId string) (string, error) {
|
||||
// 检查是否安装ping
|
||||
output, err := neService.NewNeInfo.NeRunSSHCmd(meType, neId, "ping -V")
|
||||
if err != nil {
|
||||
return "", fmt.Errorf("ping not installed")
|
||||
}
|
||||
return strings.TrimSpace(output), err
|
||||
}
|
||||
|
||||
// Run 接收ping终端交互业务处理
|
||||
func (s *Ping) Run(client *wsModel.WSClient, reqMsg wsModel.WSRequest) {
|
||||
// 必传requestId确认消息
|
||||
if reqMsg.RequestID == "" {
|
||||
msg := "message requestId is required"
|
||||
|
||||
Reference in New Issue
Block a user