fix: 代码优化

This commit is contained in:
TsMask
2025-07-15 15:16:44 +08:00
parent 9f6a7f3bb7
commit 150551acce
12 changed files with 202 additions and 130 deletions

View File

@@ -6,9 +6,10 @@ import (
"net"
"strings"
"github.com/tsmask/go-oam/src/framework/socket"
"be.ems/src/framework/config"
"be.ems/src/framework/logger"
"be.ems/src/framework/socket"
"be.ems/src/framework/utils/date"
"be.ems/src/framework/utils/parse"
neFetchlink "be.ems/src/modules/network_element/fetch_link"
@@ -21,16 +22,14 @@ import (
// 实例化数据层 TraceTask 结构体
var NewTraceTask = &TraceTask{
udpService: socket.SocketUDP{},
tcpService: socket.SocketTCP{},
traceTaskRepository: repository.NewTraceTask,
traceDataRepository: repository.NewTraceData,
}
// TraceTask 跟踪任务 服务层处理
type TraceTask struct {
udpService socket.SocketUDP // UDP服务对象
tcpService socket.SocketTCP // 测试用后续调整TODO
udpService socket.ServerUDP // UDP服务对象
tcpService socket.ServerTCP // 测试用后续调整TODO
traceTaskRepository *repository.TraceTask // 跟踪_任务数据信息
traceDataRepository *repository.TraceData // 跟踪_数据信息
}
@@ -48,8 +47,8 @@ func (r *TraceTask) CreateUDP(reload bool) error {
}
// 初始化UDP服务
r.udpService = socket.SocketUDP{Addr: host, Port: port}
if _, err := r.udpService.New(); err != nil {
r.udpService = socket.ServerUDP{Addr: host, Port: fmt.Sprint(port)}
if err := r.udpService.Listen(); err != nil {
return err
}
@@ -87,21 +86,20 @@ func (r *TraceTask) CreateUDP(reload bool) error {
// ============ 本地测试接收网元UDP发过来的数据 后续调整TODO
if config.Env() == "local" {
// 初始化TCP服务
r.tcpService = socket.SocketTCP{Addr: host, Port: port + 1}
if _, err := r.tcpService.New(); err != nil {
r.tcpService = socket.ServerTCP{Addr: host, Port: fmt.Sprint(port + 1)}
if err := r.tcpService.Listen(); err != nil {
return err
}
// 接收处理TCP数据
go r.tcpService.Resolve(func(conn *net.Conn, err error) {
go r.tcpService.Resolve(func(conn net.Conn, err error) {
if err != nil {
logger.Errorf("TCP Resolve %s", err.Error())
return
}
c := (*conn)
// 读取数据
buf := make([]byte, 2048)
n, err := c.Read(buf)
n, err := conn.Read(buf)
if err != nil {
logger.Errorf("TCP Resolve Read Error: %s", err.Error())
return
@@ -117,7 +115,7 @@ func (r *TraceTask) CreateUDP(reload bool) error {
}
// 发送响应
if _, err = c.Write([]byte("tcp>")); err != nil {
if _, err = conn.Write([]byte("tcp>")); err != nil {
logger.Errorf("TCP Resolve Write Error: %s", err.Error())
}
buf = nil