From 8f81a167d8b0ec27acfe4ffab1efa4eb63687085 Mon Sep 17 00:00:00 2001 From: TsMask <340112800@qq.com> Date: Thu, 9 Oct 2025 14:39:51 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=20AMF-audit=E6=97=A5=E5=BF=97=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E6=88=AA=E5=8F=96=E6=A0=BC=E5=BC=8F=E9=95=BF=E5=BA=A6?= =?UTF-8?q?=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/modules/network_data/service/amf.go | 28 ++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/src/modules/network_data/service/amf.go b/src/modules/network_data/service/amf.go index 8956c32c..ac9b94d3 100644 --- a/src/modules/network_data/service/amf.go +++ b/src/modules/network_data/service/amf.go @@ -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),