fix: AMF-audit日志文件截取格式长度判断
This commit is contained in:
@@ -59,7 +59,8 @@ func (r AMF) GetAuditLog(neId string) ([]map[string]any, error) {
|
||||
// 解析日志
|
||||
data := make([]map[string]any, 0)
|
||||
for _, item := range arr {
|
||||
if len(item) < 10 {
|
||||
arrLen := len(item)
|
||||
if arrLen < 6 {
|
||||
continue
|
||||
}
|
||||
timeStr := item[0]
|
||||
@@ -74,10 +75,27 @@ func (r AMF) GetAuditLog(neId string) ([]map[string]any, error) {
|
||||
ranUeNgapId := strings.TrimPrefix(item[3], "RAN-UE-NGAP-ID:")
|
||||
gnbId := strings.TrimPrefix(item[4], "GNB-ID:")
|
||||
gnbAddr := strings.TrimPrefix(item[5], "GNB-ADDR:")
|
||||
tai := strings.TrimPrefix(item[6], "TAI:")
|
||||
opType := strings.TrimPrefix(item[7], "OP-TYPE:")
|
||||
regType := strings.TrimPrefix(item[8], "REG-TYPE:")
|
||||
result := strings.TrimPrefix(item[9], "RESULT:")
|
||||
tai := ""
|
||||
opType := ""
|
||||
regType := ""
|
||||
result := ""
|
||||
switch arrLen {
|
||||
case 8:
|
||||
opType = strings.TrimPrefix(item[6], "OP-TYPE:")
|
||||
result = strings.TrimPrefix(item[7], "CAUSE:")
|
||||
case 9:
|
||||
opType = strings.TrimPrefix(item[6], "OP-TYPE:")
|
||||
regType = strings.TrimPrefix(item[7], "DEREG-TYPE:")
|
||||
result = strings.TrimPrefix(item[8], "RESULT:")
|
||||
case 10:
|
||||
tai = strings.TrimPrefix(item[6], "TAI:")
|
||||
opType = strings.TrimPrefix(item[7], "OP-TYPE:")
|
||||
regType = strings.TrimPrefix(item[8], "REG-TYPE:")
|
||||
result = strings.TrimPrefix(item[9], "RESULT:")
|
||||
default:
|
||||
fmt.Printf("Warning: unexpected log format, arrLen=%d, item=%v\n", arrLen, item)
|
||||
continue
|
||||
}
|
||||
|
||||
data = append(data, map[string]any{
|
||||
"time": t.Format(time.DateTime),
|
||||
|
||||
Reference in New Issue
Block a user