feat: 网元信令跟踪功能
This commit is contained in:
@@ -2,19 +2,20 @@ package model
|
||||
|
||||
// TraceData 跟踪_数据 trace_data
|
||||
type TraceData struct {
|
||||
ID string `json:"id" gorm:"column:id;primaryKey;autoIncrement"`
|
||||
TaskId int64 `json:"taskId" gorm:"task_id"` // 任务ID
|
||||
IMSI string `json:"imsi" gorm:"imsi"`
|
||||
MSISDN string `json:"msisdn" gorm:"msisdn"` // 可能存在
|
||||
SrcAddr string `json:"srcAddr" gorm:"src_addr"` // 源地址带端口
|
||||
DstAddr string `json:"dstAddr" gorm:"dst_addr"` // 目标地址带端口
|
||||
IfType int64 `json:"ifType" gorm:"if_type"` // 接口类型,未分类
|
||||
MsgType int64 `json:"msgType" gorm:"msg_type"`
|
||||
MsgDirect int64 `json:"msgDirect" gorm:"msg_direct"`
|
||||
Length int64 `json:"length" gorm:"length"` // 去除头后的原始数据byte长度
|
||||
Timestamp int64 `json:"timestamp" gorm:"timestamp"` // 毫秒
|
||||
RawMsg string `json:"rawMsg" gorm:"raw_msg"` // 去除头后的原始数据byteBase64
|
||||
DecMsg string `json:"decMsg" gorm:"dec_msg"` // TCP内容消息
|
||||
ID int64 `json:"id" gorm:"column:id;primaryKey;autoIncrement"`
|
||||
TraceId int64 `json:"traceId" gorm:"column:trace_id"` // 跟踪任务ID
|
||||
IMSI string `json:"imsi" gorm:"column:imsi"` // UE类型 IMSI
|
||||
MSISDN string `json:"msisdn" gorm:"column:msisdn"` // UE类型 可能存在
|
||||
SrcAddr string `json:"srcAddr" gorm:"column:src_addr"` // 源地址
|
||||
DstAddr string `json:"dstAddr" gorm:"column:dst_addr"` // 目标地址
|
||||
IfType string `json:"ifType" gorm:"column:if_type"` // 接口类型,未分类
|
||||
MsgType int64 `json:"msgType" gorm:"column:msg_type"` // 消息类型,0-req, 1-rsp
|
||||
MsgDirect int64 `json:"msgDirect" gorm:"column:msg_direct"` // 消息方向,0-recv,1-send
|
||||
MsgNe string `json:"msgNe" gorm:"column:msg_ne"` // 消息网元
|
||||
MsgEvent string `json:"msgEvent" gorm:"column:msg_event"` // 消息事件,e.g: CreateContextReq
|
||||
Length int64 `json:"length" gorm:"column:length"` // 原始数据byte长度
|
||||
Timestamp int64 `json:"timestamp" gorm:"column:timestamp"` // 纳秒时间戳
|
||||
RawMsg string `json:"rawMsg" gorm:"column:raw_msg"` // 原始数据byteBase64
|
||||
}
|
||||
|
||||
// TableName 表名称
|
||||
|
||||
@@ -2,27 +2,21 @@ package model
|
||||
|
||||
// TraceTask 跟踪_任务
|
||||
type TraceTask struct {
|
||||
ID string `json:"id" gorm:"column:id;primaryKey;autoIncrement"` // 跟踪任务ID
|
||||
TraceId string `json:"traceId" gorm:"trace_id"` // 任务编号
|
||||
TraceType string `json:"traceType" gorm:"trace_type"` // 1-Interface,2-Device,3-User
|
||||
StartTime int64 `json:"startTime" gorm:"start_time"` // 开始时间 毫秒
|
||||
EndTime int64 `json:"endTime" gorm:"end_time"` // 结束时间 毫秒
|
||||
Interfaces string `json:"interfaces" gorm:"interfaces"` // 接口跟踪必须 例如 N8,N10
|
||||
IMSI string `json:"imsi" gorm:"imsi"` // 用户跟踪必须
|
||||
MSISDN string `json:"msisdn" gorm:"msisdn"` // 用户跟踪可选
|
||||
UeIp string `json:"ueIp" gorm:"ue_ip"` // 设备跟踪必须 IP
|
||||
SrcIp string `json:"srcIp" gorm:"src_ip"` // 源地址IP
|
||||
DstIp string `json:"dstIp" gorm:"dst_ip"` // 目标地址IP
|
||||
SignalPort int64 `json:"signalPort" gorm:"signal_port"` // 地址IP端口
|
||||
CreateBy string `json:"createBy" gorm:"create_by"` // 创建者
|
||||
CreateTime int64 `json:"createTime" gorm:"create_time"` // 创建时间
|
||||
UpdateBy string `json:"updateBy" gorm:"update_by"` // 更新者
|
||||
UpdateTime int64 `json:"updateTime" gorm:"update_time"` // 更新时间
|
||||
Remark string `json:"remark" gorm:"remark"` // 备注
|
||||
NeType string `json:"neType" gorm:"ne_type"` // 网元类型
|
||||
NeId string `json:"neId" gorm:"ne_id"` // 网元ID
|
||||
NotifyUrl string `json:"notifyUrl" gorm:"notify_url"` // 信息数据通知回调地址UDP 例如udp:192.168.5.58:29500
|
||||
FetchMsg string `json:"fetchMsg" gorm:"fetch_msg"` // 任务下发请求响应消息
|
||||
ID int64 `json:"id" gorm:"column:id;primaryKey;autoIncrement"` // 跟踪任务ID
|
||||
TraceId string `json:"traceId" gorm:"column:trace_id"` // 任务编号
|
||||
TraceType string `json:"traceType" gorm:"column:trace_type" binding:"required"` // 1-Interface,2-Device,3-UE
|
||||
StartTime int64 `json:"startTime" gorm:"column:start_time"` // 开始时间 毫秒
|
||||
EndTime int64 `json:"endTime" gorm:"column:end_time" binding:"required"` // 结束时间 毫秒
|
||||
Interfaces string `json:"interfaces" gorm:"column:interfaces"` // 接口跟踪必须 例如 N8,N10
|
||||
IMSI string `json:"imsi" gorm:"column:imsi"` // 用户跟踪必须
|
||||
MSISDN string `json:"msisdn" gorm:"column:msisdn"` // 用户跟踪可选
|
||||
SrcIp string `json:"srcIp" gorm:"column:src_ip"` // 源地址IP
|
||||
DstIp string `json:"dstIp" gorm:"column:dst_ip"` // 目标地址IP
|
||||
CreateBy string `json:"createBy" gorm:"column:create_by"` // 创建者
|
||||
CreateTime int64 `json:"createTime" gorm:"column:create_time"` // 创建时间
|
||||
Remark string `json:"remark" gorm:"column:remark"` // 备注
|
||||
NeList string `json:"neList" gorm:"column:ne_list" binding:"required"` // 网元列表 neType_neId 例如 UDM_001,AMF_001
|
||||
NotifyUrl string `json:"notifyUrl" gorm:"column:notify_url"` // 信息数据通知回调地址UDP 例如udp:192.168.5.58:33033
|
||||
}
|
||||
|
||||
// TableName 表名称
|
||||
|
||||
@@ -2,19 +2,19 @@ package model
|
||||
|
||||
// TraceTaskHlr 跟踪_任务给HRL网元 trace_task_hlr
|
||||
type TraceTaskHlr struct {
|
||||
ID string `json:"id" gorm:"column:id;primaryKey;autoIncrement"`
|
||||
TraceId string `json:"traceId" gorm:"trace_id"` // 任务编号
|
||||
IMSI string `json:"imsi" gorm:"imsi"` // IMSI
|
||||
MSISDN string `json:"msisdn" gorm:"msisdn"` // MSISDN
|
||||
StartTime int64 `json:"startTime" gorm:"start_time"` // 开始时间
|
||||
EndTime int64 `json:"endTime" gorm:"end_time"` // 结束时间
|
||||
Status string `json:"status" gorm:"status"` // 任务状态(0停止 1进行)
|
||||
Msg string `json:"msg" gorm:"msg"` // 任务信息
|
||||
Remark string `json:"remark" gorm:"remark"` // 备注说明
|
||||
CreateBy string `json:"createBy" gorm:"create_by"` // 创建者
|
||||
CreateTime int64 `json:"createTime" gorm:"create_time"` // 创建时间
|
||||
UpdateBy string `json:"updateBy" gorm:"update_by"` // 更新者
|
||||
UpdateTime int64 `json:"updateTime" gorm:"update_time"` // 更新时间
|
||||
ID int64 `json:"id" gorm:"column:id;primaryKey;autoIncrement"`
|
||||
TraceId string `json:"traceId" gorm:"column:trace_id"` // 任务编号
|
||||
IMSI string `json:"imsi" gorm:"column:imsi"` // IMSI
|
||||
MSISDN string `json:"msisdn" gorm:"column:msisdn"` // MSISDN
|
||||
StartTime int64 `json:"startTime" gorm:"column:start_time"` // 开始时间
|
||||
EndTime int64 `json:"endTime" gorm:"column:end_time"` // 结束时间
|
||||
Status string `json:"status" gorm:"column:status"` // 任务状态(0停止 1进行)
|
||||
Msg string `json:"msg" gorm:"column:msg"` // 任务信息
|
||||
Remark string `json:"remark" gorm:"column:remark"` // 备注说明
|
||||
CreateBy string `json:"createBy" gorm:"column:create_by"` // 创建者
|
||||
CreateTime int64 `json:"createTime" gorm:"column:create_time"` // 创建时间
|
||||
UpdateBy string `json:"updateBy" gorm:"column:update_by"` // 更新者
|
||||
UpdateTime int64 `json:"updateTime" gorm:"column:update_time"` // 更新时间
|
||||
}
|
||||
|
||||
// TableName 表名称
|
||||
|
||||
42
src/modules/trace/model/trace_task_udp_msg.go
Normal file
42
src/modules/trace/model/trace_task_udp_msg.go
Normal file
@@ -0,0 +1,42 @@
|
||||
package model
|
||||
|
||||
type TraceDefType = int64
|
||||
|
||||
const (
|
||||
MSG_TYPE_REQ TraceDefType = 0
|
||||
MSG_TYPE_RSP TraceDefType = 1
|
||||
MSG_DIRECT_RECV TraceDefType = 0
|
||||
MSG_DIRECT_SEND TraceDefType = 1
|
||||
// NF_TYPE_AMF = "AMF"
|
||||
// NF_TYPE_SMF = "SMF"
|
||||
// NF_TYPE_AUSF = "AUSF"
|
||||
// NF_TYPE_UDM = "UDM"
|
||||
// NF_TYPE_PCF = "PCF"
|
||||
)
|
||||
|
||||
// TraceMsg 跟踪_消息
|
||||
type TraceMsg struct {
|
||||
TraceId int
|
||||
MsgType TraceDefType //0-req, 1-rsp
|
||||
MsgDirect TraceDefType //0-recv,1-send
|
||||
NfName string
|
||||
MsgEvent string //e.g: CreateContextReq
|
||||
IMSI string
|
||||
IfType string //interface type: N2,N8...
|
||||
SrcIpStr string
|
||||
DstIpStr string
|
||||
Timestamp int64
|
||||
}
|
||||
|
||||
// TraceReq 跟踪_请求
|
||||
type TraceReq struct {
|
||||
TraceId int64 `json:"traceId"` // Unique identifier for trace operations:delete...
|
||||
TraceType string `json:"traceType"` // Type of trace: Interface;UE; Device
|
||||
StartTime string `json:"startTime"` // Start time of the trace: e.g., "2025-04-12 11:24:59"
|
||||
EndTime string `json:"endTime"` // End time of the trace: e.g., "2025-04-12 14:24:59"
|
||||
Interfaces []string `json:"interfaces,omitempty"` // List of interfaces: e.g., ["N8", "N10", "N1/N2"]
|
||||
IMSI string `json:"imsi,omitempty"` // International Mobile Subscriber Identity
|
||||
SrcIp string `json:"srcIp,omitempty"` // Source IP address (used for device-level filtering)
|
||||
DstIp string `json:"dstIp,omitempty"` // Destination IP address (used for device-level filtering)
|
||||
NotifyUrl string `json:"notifyUrl,omitempty"` // Notification URL: e.g., "udp:192.168.5.58:33033"
|
||||
}
|
||||
Reference in New Issue
Block a user