cnSGW-C Troubleshooting

Description

This chapter provides information on using the command line interface (CLI) commands and logs for troubleshooting any issues that may arise during system operation.

Using CLI Data

This section describes the show and clear commands and the monitor commands that are used for troubleshooting

show subscriber and cdl show Commands

Table 1. Feature History

Feature Name

Release Information

Description

Supporting IPv6 Only eNB Insertion through Show and Clear Subscriber CLI commands

2024.02.0

Before you add IPv6 only eNBs in a network, all UPFs in a mesh must be IPv6 enabled for successful handovers of IPv4 only eNB sessions to IPv6 only eNB sessions. In addition, all sessions must have V4V6 tunnel before inserting a V6 only eNB. To support this IPV6 only eNB insertion, cnSGW-c includes the following CLI commands:

  • The show subscriber nf-service sgw data-tunnel data_tunnel_type and show subscriber count nf-service sgw data-tunnel data_tunnel_type CLI commands

  • The clear subscriber nf-service sgw data-tunnel data_tunnel_type CLI command

Default Setting: Not Applicable

This section describes troubleshooting information.

  • To display the SGW subscriber information, use the following commands:

    show subscriber namespace sgw imsi imsi_value

    show subscriber nf-service sgw imsi imsi_value

    show subscriber count { all }

    show subscriber namespace sgw imsi 123456789012348
    subscriber-details
    {
      "subResponses": [
        {
          "status": true,
          "genericInfo": {
            "imsi": "imsi-123456789012348",
            "mei": "imei-123456786666660",
            "msisdn": "msisdn-223310101010101",
            "accessType": "EUTRAN",
            "plmnId": {
              "mcc": "123",
              "mnc": "456"
            },
            "sgwProfileName": "sgw1",
            "unAuthenticatedImsi": "No"
          },
          "s11cInterfaceInfo": {
            "sgwTeid": "[0x12000147] 301990215",
            "sgwIPv4Address": "209.165.201.19",
            "mmeTeid": "[0x62b5] 25269",
            "mmeIPv4Address": "209.165.201.20"
          },
          "pdnInfoList": {
            "totalPdn": 1,
            "pdnInfo": [
              {
                "pdnId": "PDN-1",
                "apn": "intershat",
                "attachType": "Initial Attach",
                "sgwRelocState": "N/A",
                "operatorPolicyName": "N/A",
                "dnnProfileName": "N/A",
                "defaultEbi": 5,
                "pdnType": "IPv4",
                "allocatedIPv4": "209.165.201.26",
                "apnSelectionMode": "Subscribed",
                "ambrUplink": "10 Kbps",
                "ambrDownlink": "20 Kbps",
                "s5cInterfaceInfo": {
                  "sgwTeid": "[0x52000147] 1375732039",
                  "sgwIPv4Address": "209.165.201.19",
                  "pgwTeid": "[0x339a] 13210",
                  "pgwIPv4Address": "209.165.201.18"
                },
                "sxaInterfaceInfo": {
                  "selectedUP": "209.165.201.20",
                  "upEpKey": "209.165.201.20:209.165.201.19",
                  "cpSeid": "[0x1200014752000147] 1297038098512740679",
                  "upSeid": "[0x2712] 10002"
                },
                "bearerInfoList": {
                  "totalBearer": 1,
                  "bearerInfo": [
                    {
                      "bearerId": "Bearer-1",
                      "state": "Connected",
                      "ebi": 5,
                      "isDefaultBearer": true,
                      "qosInfo": {
                        "qci": 6,
                        "arp": 113
                      },
                      "s1uInterfaceInfo": {
                        "sgwTeid": "[0x62b7] 25271",
                        "sgwIPv4Address": "209.165.200.226",
                        "eNodeBTeid": "[0x62b8] 25272",
                        "eNodeBIPv4Address": "209.165.201.20"
                      },
                      "s5uInterfaceInfo": {
                        "sgwTeid": "[0x62b6] 25270",
                        "sgwIPv4Address": "209.165.201.1",
                        "pgwTeid": "[0x339b] 13211",
                        "pgwIPv4Address": "209.165.201.18"
                      },
                      "chargingId": 303174163
                    }
                  ]
                },
                "uli": {
                  "mcc": "123",
                  "mnc": "456",
                  "tac": "0x92a",
                  "eci": "0x12d687"
                },
                "uetimeZone": {
                  "timeZone": "+0:15",
                  "dayLightSavingTime": "+1 hour"
                },
                "plmnType": "VISITOR"
                "dualStackEnabled": true,
                "dataTunnelType": "IPV4V6"
              }
            ]
          }
        }
      ]
    }
    show subscriber count all
    subscriber-details
    {
       "sessionCount": 50
    }
  • To display the session summary information, use the following command:

    cdl show sessions summary
    cdl show sessions summary 
    message params: {session-summary cli session {0 100 0 [] 0 0}}
    session {
        primary-key imsi-146062234105885
        unique-key [ 16777218 ]
        map-id 1
        instance-id 1
        version 1
        create-time 2020-04-27 16:18:24.225646626 +0000 UTC
        last-updated-time 2020-04-27 16:18:24.87241245 +0000 UTC
        purge-on-eval false
        next-eval-time 2020-05-04 16:18:24 +0000 UTC
        data-size 406
    }
  • To display the subscriber output based on the data tunnel type, use the following command:

    show subscriber nf-service sgw data-tunnel data_tunnel_type
    show subscriber nf-service sgw data-tunnel IPV4V6
    subscriber-details 
    {
      "subResponses": [
        [
          "id-index:1:0:32768",
          "id-index-key:1:0:globalKey:32768",
          "id-value:16777344",
          "imsi:imsi-123456789012348",
          "msisdn:msisdn-223310101010101",
          "imei:imei-123456786666660",
          "upf:10.1.12.212",
          "upfEpKey:10.1.12.212:10.1.10.78",
          "subscribertype:non-volte",
          "s5s8Ipv4:10.1.15.100",
          "s11Ipv4:10.1.12.212",
          "data-tunnel:IPV4V6",
          "namespace:sgw",
          "nf-service:sgw"
        ]
      ]
    }
    
  • To display the subscriber count output based on data tunnel type, use the following command:

    show subscriber count nf-service sgw data-tunnel data_tunnel_type
    show subscriber count nf-service sgw data-tunnel IPV4V6
    subscriber-details 
    {
      "sessionCount": 1
    }
    
  • To clear subscriber information, use the following commands:

    clear subscriber all

    clear subscriber nf-service sgw all

    clear subscriber all
    result
    ClearSubscriber Request submitted
    clear subscriber nf-service sgw all
    result
    ClearSubscriber Request submitted
  • To clear the subscriber information using a data tunnel type, use the following command:

    clear subscriber nf-service sgw data-tunnel data_tunnel_type
    clear subscriber nf-service sgw data-tunnel IPV4V6     
    result 
    Clear subscriber request submitted successfully for GR Instance ID 1. Waiting Time is 9.351706 seconds
    

Logs

The system logging feature provides a common way to log the log messages across applications. Each log consists of the following components:

  • Timestamp—Shows the date and time of the log creation.

  • Log message—Shows the message of a specific log.

  • Log level—Shows the level of importance of log message.

  • Log tag—Shows the details of module name, component name, and interface name. A log tag is pre-created and passes during logging.

Logs for Event Failures

Table 2. Feature History
Feature Name

Release Information

Description

Event Failure Logs

2024.03.0

cnSGWc provides the following support:

  • Consistent event failure logs for PDN Setup, Idle or Active, PDN Modify, and PDN Disconnect procedures across pods

  • Configurable logs at pod type

  • Inclusion of request and response details in a single-line format

The significant volume of unnecessary system-generated logs resulted in increased memory consumption, performance impact, and ineffective management and utilization of logs. To prevent these issues, the consistent error log message format across various pods is introduced for reduced memory consumption, minimized number of log generations by the system, and efficient troubleshooting. The single-line log format display enhances the readability.

Default Setting: Not Applicable

Feature Description

The error logging for cnSGWc procedures or events includes the following points:

  • Consistent event failure logs across pods.

  • Configurable logs at pod type.

  • Inclusion of log primary key, interface, and procedure details.

  • Inclusion of message request and response with an option to enable or disable error logging for the log attributes.

  • Single-line log display with the default log level as INFO in disabled state.


    Note


    Enable the INFO log level, as required.


How it Works

To have the consistent log format across each pod, each component uses a common interface for event logging. A log uses the JSON format so that all the data appears in a single line. Logs are written at INFO level so that this level can be disabled by default and enabled, as required.

A log tag has the following format:

transaction.event.<pod-type>, where <pod-type> is the service name that a pod uses. For example, rest-ep and sgw-service.

You can enable or disable logs for a specific pod type or service using log tags.

The logs are written when the corresponding log level is set to INFO, DEBUG, or TRACE. However, the message request or response fields are populated only when the log level is set to DEBUG or TRACE.

Sample Log when Debug level is enabled
sgw-service-0 [INFO] [Transaction.go:1595] [transaction.event.sgw-service]
 {"TxnId":16,"StartTime":"2024-05-10T15:01:00+05:30","GRInstanceId":1,
"TxnType":"S5CreateSessReq","Priority":33,"SessionNamespace":"sgw(2)",
"CdlSliceName":"1","SubscriberId":"imsi-430967582185910","SessionPrimaryKey":
"imsi-430967582185910","SessionKeys":"imsi-430967582185910 (pk) 
subscribertype:wps (nuk) 16777217 (uk) id-index:1:0:32768 (nuk) 
id-index-key:1:0:globalKey:32768 (nuk) id-value:16777217 (nuk) imsi:
imsi-430967582185910 (nuk) msisdn:msisdn-9326737733 (nuk) imei:imeisv-1122334455667788
 (nuk) upf:192.168.56.20 (nuk) upfEpKey:192.168.56.20:192.168.56.10 
(nuk) s11Ipv4:192.168.56.20 (nuk) s5s8Ipv4:192.168.56.30 (nuk)",
"SessionState":"Create_Session","ErrorMessage":"{\"ErrType\":3,\"ErrCause\":
{\"Value\":89,\"Pce\":false,\"Bce\":false,\"OrigInd\":false,\"OffendingIe\":
{\"Valid\":false,\"Tag\":0,\"Instance\":0,\"Value\":\"\"}},\"BrCtxtCause\":true,
\"SubfailReason\":89,\"SubfailReasonDetailed\":0,\"SubfailStr\":\
"S5 Create Session Response Failure\",\"SubfailReasonStr\":\"IPv4:192.168.56.30 
IPv6:\",\"SourceDetails\":\"/opt/workspace/sgw_service/src/sgw-service/procedures
/pdnsetup/idlestate.go:963\"}","MessageRequest":{"Version":2,"TEIDflag":true,
"MsgPriority":true,"MsgTypeId":32,"MsgPriorityValue":10,"meta_data":{"from_ip"
:3232249867,"to_ip":3232249886,"to_port":2123,"intfType":3,"s5edscp":{"Value":12,
"Valid":true},"peerType":1},"MsgType":{"Create_Session_Request":{"IMSI":
"430967582185910","APN":"starent.com","AMBR":{"UL":119,"DL":135},"MEI":
"1122334455667788","MSISDN":"9326737733","Indication":{},"PAA":{"PDN_Type":1,
"IPv4":"0.0.0.0"},"RAT_Type":{"value":6},"Serving_Network":{"MCC":"123","MNC":
"765"},"ULI":{"uli_tai":{"mcc":"214","mnc":"365","val":4660}},"FQ_TEID":{"sgwCntrl":
{"IFace":6,"TEID":1358954497,"IPv4":"192.168.56.11"}},"Bearer_Context_List":
{"num_bearer_ctxt":1,"pbBearerCxt":[{"linked_ebi":{"value":5},"fqteid":{"sgwData":
{"TEID":1073807935,"IPv4":"192.168.56.60","IPv6":"4123::192:168:56:60"}},
"bearerQos":{"PL":2,"QCI":5,"arp":8}}]},"Charging_Characteristics":{"value":
"NBIAAA=="},"PDN_Type":{"value":1},"APN_Restriction":{},"Selection_Mode":
{"value":1}}}},"MessageResponse":{"Version":2,"TEIDflag":true,"MsgPriority":
true,"MsgLength":19,"TIED":1358954497,"Seq":1,"MsgTypeId":33,"MsgPriorityValue":10,
"meta_data":{"from_ip":3232249886,"to_ip":3232249867,"intfType":3},"MsgType":
{"Create_Session_Response":{"Cause":{"Cause_Value":89},"Recovery":{"value":10}}}}}
Sample Log when Info level is enabled
sgw-service-0 [INFO] [Transaction.go:1607] [transaction.event.sgw-service]
 {"TxnId":7,"StartTime":"2024-06-20T12:10:05+05:30","GRInstanceId":1,"TxnType":
"S5CreateSessReq","Priority":33,"SessionNamespace":"sgw(2)","CdlSliceName":"1",
"SubscriberId":"imsi-430967582185910","SessionPrimaryKey":"imsi-430967582185910",
"SessionKeys":"imsi-430967582185910 (pk) subscribertype:wps (nuk) 16777217 (uk) 
id-index:1:0:32768 (nuk) id-index-key:1:0:globalKey:32768 (nuk) id-value:16777217 
(nuk) imsi:imsi-430967582185910 (nuk) msisdn:msisdn-9326737733 (nuk) imei:
imeisv-1122334455667788 (nuk) upf:192.168.56.20 (nuk) 
upfEpKey:192.168.56.20:192.168.56.10 (nuk) s11Ipv4:192.168.56.20 (nuk) 
s5s8Ipv4:192.168.56.30 (nuk)","SessionState":"Create_Session","ErrorMessage":
"{\"ErrType\":3,\"ErrCause\":{\"Value\":89,\"Pce\":false,\"Bce\":false,\"OrigInd\"
:false,\"OffendingIe\":{\"Valid\":false,\"Tag\":0,\"Instance\":0,\"Value\":\"\"}},
\"BrCtxtCause\":true,\"SubfailReason\":89,\"SubfailReasonDetailed\":0,\"SubfailStr\":
\"S5 Create Session Response Failure\",\"SubfailReasonStr\":\"IPv4:192.168.56.30 
IPv6:\",\"SourceDetails\":\"/opt/workspace/sgw_service/src/sgw-service/procedures
/pdnsetup/idlestate.go:971\"}"}

Supported Logs

This feature supports logs for the following procedures, pods, and interfaces:

Table 3. Supported Logs

Procedures

Pod

Interface

PDN Setup

SERVICE

S11, S5, SXA, RMGR

Idle/Active

SERVICE

S11, S5, SXA

PDN Modify

SERVICE

S11, SXA, S5

PDN Disconnect (DSR/DBR)

SERVICE

S11, S5, SXA, RMGR

Enabling or Disabling Event Logging

To enable or disable the event logs, use the following sample configuration:

config 
  logging name transaction.event.sgw-service level application [ debug | error | info | off | trace | warn ] 
end 

NOTES:

  • logging name transaction.event.sgw-service level application [ debug | error | info | off | trace | warn ] : To enable an event log, specify debug , error , info , trace , or warn . To disable an event log, specify the off option.

Verifying Event Logging
Use the show running-config logging command to verify the configured application event logging level.

The following is an example output of the logging name transaction.event.sgw-service level application debug event logging level.

show running-config logging
   logging level tracing debug
   logging name infra.config.core level application trace
   logging name infra.config.core level transaction trace
   logging name infra.config.core level tracing off
   logging name infra.message_log.core level transaction trace
   logging name transaction.event.sgw-service level application debug