WO2025017690A1 - System and method for troubleshooting using error logs in a network - Google Patents
System and method for troubleshooting using error logs in a network Download PDFInfo
- Publication number
- WO2025017690A1 WO2025017690A1 PCT/IN2024/051257 IN2024051257W WO2025017690A1 WO 2025017690 A1 WO2025017690 A1 WO 2025017690A1 IN 2024051257 W IN2024051257 W IN 2024051257W WO 2025017690 A1 WO2025017690 A1 WO 2025017690A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- error
- log
- flag
- capturing
- details
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0778—Dumping, i.e. gathering error/state information after a fault for later diagnosis
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
Definitions
- a portion of the disclosure of this patent document contains material, which is subject to intellectual property rights such as but are not limited to, copyright, design, trademark, integrated circuit (IC) layout design, and/or trade dress protection, belonging to Jio Platforms Limited (JPL) or its affiliates (hereinafter referred as owner).
- JPL Jio Platforms Limited
- owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all rights whatsoever. All rights to such intellectual property are fully reserved by the owner.
- the embodiments of the present disclosure generally relate to troubleshooting using error logs in a communications network. More particularly, the present disclosure relates to the system and method for troubleshooting using error logs in a network.
- Logging is the process of collecting and storing data over a period of time in different systems or environments. The logging involves tracking a variety of events.
- IMSI international mobile subscriber identity
- a session ID is a unique identification number that is generated by a server.
- An error code (or a return code) is a numeric or alphanumeric code that indicates the nature of an error and, when possible, why it occurred.
- a destination host enables a network connection to a remote host system using a defined host name.
- An attribute-value pair refers to a fundamental representation in computing systems to express entities by describing their characteristics.
- the AVP consists of two elements: an attribute and a value.
- Logging is an essential process for capturing and storing detailed information about the session occurring in an application.
- the logging facilitates troubleshooting issues, monitoring performance, security and auditing compliance.
- the logs give records indicating information about activity and events associated with the application.
- the logs contain information about the functioning of the system, and accordingly, the cause can be identified for the error occurred in the application.
- the logs also facilitate compliance with regulation requirements.
- the logs are the "black box" of the application. They contain information about how your system works, so you can figure out what's wrong and fix it.
- the log levels can be classified into a plurality of categories such as fatal, error, warn, info, debug, trace, all, off, etc.
- the error mode does not indicate that applications are running abnormally. In fact, the error mode indicates a failure of an important element to notice in the applications.
- write operations per second is low as compared to trace, debug, info and warn mode logging level. Therefore, the error mode is preferred for the system performance as compared to info mode.
- a method for troubleshooting of a network by capturing a plurality of logs in an error mode comprises creating a dynamic logger for capturing error details associated with an application.
- the method comprises on detecting an error in one of a plurality of conditions, enabling a runtime configurable flag corresponding to the one of the plurality of conditions using the dynamic logger.
- the method further comprises capturing the error details in a log corresponding to the one of plurality of conditions and disabling the runtime configurable flag after capturing the error details in the log.
- the captured error details in the log are stored in one of a plurality of log files.
- the captured error details are used for error debugging.
- the details include an international mobile subscriber identity (IMSI), a session identity (ID), error codes, a destination host, an origin host, and an attribute-value pair (A VP).
- IMSI international mobile subscriber identity
- ID session identity
- a VP attribute-value pair
- the plurality of conditions includes an abort session request (ASR) - an abort session answer (ASA) messaging, a Re-auth request (RAR) - a Re-auth answer (RAA) messaging, a session termination request (STR) - a session termination answer (STA) messaging, charging rule reporting, creating a dummy a subscriber profile repository (SPR) profile, receiving an emergency request.
- ASR abort session request
- RAR Re-auth request
- RAR Re-auth answer
- RAA Re-auth answer
- STR session termination request
- STA session termination answer
- charging rule reporting creating a dummy a subscriber profile repository (SPR) profile, receiving an emergency request.
- a plurality of runtime configurable flags are used in error mode which includes an ASA error log enable flag, a RAA error log enable flag, a STR error log enable flag, a charging rule report log enable flag, a SPR failure debug flag and an emergency debug flag.
- the plurality of log files is created based on file size and time duration.
- the method further comprises managing count of the plurality of log files.
- a plurality of old logs is overwritten based on the plurality of runtime configurable flags.
- a system for troubleshooting of a network by capturing a plurality of logs comprises a creation unit configured to create a dynamic logger for capturing error details associated with an application.
- a processing unit On detecting an error in one of a plurality of conditions, a processing unit is configured to enable a runtime configurable flag corresponding to the one of the plurality of conditions using the dynamic logger.
- a capturing unit is configured to capture the error details in a log corresponding to the one of plurality of conditions.
- the processing unit is configured to disable the runtime configurable flag after capturing the error details in the log.
- the captured error details in the log are stored in one of a plurality of log files.
- the captured error details are used for error debugging.
- the details include an international mobile subscriber identity (IMSI), a session identity (ID), error code, destination host, origin host and an attribute- value pair (A VP).
- IMSI international mobile subscriber identity
- ID session identity
- a VP attribute- value pair
- the plurality of conditions includes an abort session request (ASR) - an abort session answer (ASA) messaging, a Re-auth request (RAR) - a Re-auth answer (RAA) messaging, a session termination request (STR) - a session termination answer (STA) messaging, charging rule reporting, creating a dummy a subscriber profile repository (SPR) profile, receiving an emergency request.
- ASR abort session request
- RAR Re-auth request
- RAR Re-auth answer
- RAA Re-auth answer
- STR session termination request
- STA session termination answer
- charging rule reporting creating a dummy a subscriber profile repository (SPR) profile, receiving an emergency request.
- a plurality of runtime configurable flags includes an ASA error log enable flag, a RAA error log enable flag, a STR error log enable flag, a charging rule report log enable flag, a SPR failure debug flag and an emergency debug flag.
- the plurality of log files is created based on file size and time duration.
- the processing unit is configured to manage count of the plurality of log files.
- a plurality of old logs is overwritten based on the plurality of configurable flags.
- a user equipment is communicatively coupled with a system.
- the coupling comprises steps of receiving, by the system, a connection request and sending, by the system, an acknowledgment of the connection request to the UE.
- the coupling further comprises transmitting a plurality of signals in response to the connection request.
- the system is configured for troubleshooting of a network by capturing a plurality of logs in an error mode.
- An object of the present disclosure is to provide system and method for troubleshooting using error logs in a network.
- Another object of the present disclosure is to enable logging in an error mode to capture details for error scenarios.
- Another object of the present disclosure is to add multiple logs for multiple conditions in the error mode.
- Another object of the present disclosure is to enable or disable logging in the error mode using runtime configurable flags.
- Another object of the present disclosure is to allow the users to collect the logs as per requirement.
- Another object of the present disclosure is to create a log file to capture specific details.
- Another object of the present disclosure is to capture different call flow details in loggers.
- Another object of the present disclosure is to reduce the need for resources during running traffic.
- FIG. 1 illustrates an exemplary network architecture for implementing a system, in accordance with an embodiment of the present disclosure.
- FIG. 2 illustrates an exemplary block diagram of the system, in accordance with an embodiment of the present disclosure.
- FIG. 3 illustrates an exemplary representation of connection diagram of policy control function (PCF) or policy and charging rules function (PCRF) with other network elements through a corresponding interface, in accordance with some embodiments of the present disclosure.
- PCF policy control function
- PCF policy and charging rules function
- FIG. 4 illustrates an exemplary representation of a flow diagram for troubleshooting a network by capturing a plurality of logs in an error mode, in accordance with some embodiments of the present disclosure.
- FIG. 5 illustrates an exemplary computer system in which or with which the embodiments of the present disclosure may be implemented.
- individual embodiments may be described as a process that is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged.
- a process is terminated when its operations are completed but could have additional steps not included in a figure.
- a process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination can correspond to a return of the function to the calling function or the main function.
- exemplary and/or “demonstrative” is used herein to mean serving as an example, instance, or illustration.
- the subject matter disclosed herein is not limited by such examples.
- any aspect or design described herein as “exemplary” and/or “demonstrative” is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to preclude equivalent exemplary structures and techniques known to those of ordinary skill in the art.
- the terms “includes,” “has,” “contains,” and other similar words are used in either the detailed description or the claims, such terms are intended to be inclusive like the term “comprising” as an open transition word without precluding any additional or other elements.
- Embodiments herein relate to systems and methods for troubleshooting using error logs in a network.
- the present disclosure is directed towards enhancement in functioning of policy control function (PCF) or policy and charging rules function (PCRF).
- PCF policy control function
- PCRF policy and charging rules function
- the functioning of PCF or PCRF is enhanced by adding logs in an error mode to capture one or more specific details such as but not limited to, international mobile subscriber identity (IMSI), session ID, error code, destination host, and origin host in case of error occurred for debugging.
- IMSI international mobile subscriber identity
- the logs are added using a set of runtime configurable flags, which can be enabled/disabled for logging. Some of the flags are as follows:
- strErrorEogEnable flag captures the logs on specific Rx diameter interface’s session termination request (STR) - session termination answer (STA) message.
- chargingRuleReportEogEnable flag captures the logs on specific Gx diameter interface’s RAR-RAA and credit control request (CCR) - credit control answer (CCA) message.
- IMSI international mobile subscriber identity
- API access point network
- emergencyDebugFlag captures IMSI and service gateway GPRS support node (SGSN) mobile country code (MCC), mobile network code (MNC) details for subscribers for which emergency request is received.
- SGSN service gateway GPRS support node
- MCC mobile country code
- MNC mobile network code
- the configurable flags can be configured during run time. The one or more flags can be enabled at the PCRF or PCF based on the received error message. Each of the configurable flags is associated with different call flow details. When an error message is received, a particular configurable flag required for the received error message is enabled and the corresponding call flow details are captured for error debugging.
- capturing different call flow details using the configurable flags allows creation of a separate log file to capture specific details (e.g., diameter interface messages and hypertext transfer protocol -2 (HTTP2) interface service operations).
- a corresponding configurable flag is enabled to capture selected information element (IE) and AVP details in the log. Therefore, one log file is created for all logs, thereby enabling identification of the captured details easily.
- the details corresponding to the selected IE and AVP details is captured through enabling one or more flags. This reduces number of input and output operations as compared to the other log level.
- the system runs in error mode so as to save the processing resources during running traffic and to collect the logs as per requirement.
- a dynamic logger is created for capturing specific information.
- the logger can be configured using the command line interface with the application. Using configurable flags, specific information can be logged so that it can be easily determined what activity or event are performed within the signalling messages.
- log files can be created based on file size and time duration. Additionally, or alternatively, file count can also be manageable and old files may be overwritten based on configurable values.
- FIG. 1 illustrates an exemplary network architecture 100 for implementing a system 108 for troubleshooting a network (106), in accordance with an embodiment of the present disclosure.
- one or more computing devices 104-1, 104- 2. . .104-N may be connected to the system 108 through the network 106.
- a person of ordinary skill in the art will understand that the one or more computing devices 104-1, 104-2... 104-N may be collectively referred as computing devices 104 and individually referred as a computing device 104.
- 2...102-N may provide one or more requests to the system 108.
- a person of ordinary skill in the art will understand that the one or more users 102-1, 102-
- 2...102-N may be collectively referred as users 102 and individually referred as a user 102.
- the computing devices 104 may also be referred as a user equipment (UE) 104 or as UEs 104 throughout the disclosure.
- UE user equipment
- the computing device 104 may include, but not be limited to, a mobile, a laptop, etc. Further, the computing device 104 may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as a camera, audio aid, microphone, or keyboard. Furthermore, the computing device 104 may include a mobile phone, smartphone, virtual reality (VR) devices, augmented reality (AR) devices, a laptop, a general- purpose computer, a desktop, a personal digital assistant, a tablet computer, and a mainframe computer. Additionally, input devices for receiving input from the user 102 such as a touchpad, touch-enabled screen, electronic pen, and the like may be used.
- VR virtual reality
- AR augmented reality
- the network 106 may include, by way of example but not limitation, at least a portion of one or more networks having one or more nodes that transmit, receive, forward, generate, buffer, store, route, switch, process, or a combination thereof, etc. one or more messages, packets, signals, waves, voltage or current levels, some combination thereof, or so forth.
- the network 106 may also include, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet- switched network, a circuit- switched network, an ad hoc network, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof.
- PSTN Public-Switched Telephone Network
- the user equipment 104 is communicatively coupled with the system 108.
- the system 108 may receive a connection request from the UE 104.
- the system 108 may send an acknowledgment of the connection request to the UE 104.
- the UE 104 may transmit a plurality of signals in response to the connection request.
- the system 108 may be configured for troubleshooting of the network 106 by capturing a plurality of error logs in an error mode.
- FIG. 2 illustrates an example block diagram 200 of the system 108, in accordance with an embodiment of the present disclosure.
- the system 108 may include one or more processor(s) 202.
- the one or more processor(s) 202 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, logic circuitries, and/or any devices that process data based on operational instructions.
- the one or more processor(s) 202 may be configured to fetch and execute computer-readable instructions stored in a memory 204 of the system 108.
- the memory 204 may be configured to store one or more computer-readable instructions or routines in a non-transitory computer readable storage medium, which may be fetched and executed to create or share data packets over a network service.
- the memory 204 may comprise any non-transitory storage device including, for example, volatile memory such as random-access memory (RAM), or non-volatile memory such as erasable programmable read only memory (EPROM), flash memory, and the like.
- the system 108 may include an interface(s) 206.
- the interface(s) 206 may comprise a variety of interfaces, for example, interfaces for data input and output devices (I/O), storage devices, and the like.
- the interface(s) 206 may facilitate communication through the system 108.
- the interface(s) 206 may also provide a communication pathway for one or more components of the system 108. Examples of such components include, but are not limited to, processing engine(s) 208 and a database 210. Further, the processing engine(s) 208 may include one or more engine(s) such as, but not limited to, an input/output engine, an identification engine and an optimization engine.
- the processing engine(s) 208 may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processing engine(s) 208.
- programming for the processing engine(s) 208 may be processorexecutable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processing engine(s) 208 may comprise a processing resource (for example, one or more processors), to execute such instructions.
- the machine-readable storage medium may store instructions that, when executed by the processing resource, implement the processing engine(s) 208.
- the system may comprise the machine- readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine-readable storage medium may be separate but accessible to the system and the processing resource.
- the processing engine(s) 208 may be implemented by electronic circuitry.
- the database 210 includes data that may be either stored or generated as a result of functionalities implemented by any of the components of the processor 202 or the processing engines 208.
- the database 210 may be separate from the system 108.
- the database 210 may be indicative of including, but not limited to, a relational database, a distributed database, a cloud-based database, or the like.
- the processing engine(s) 208 is directed towards enhancement in the functioning of policy control function (PCF) or policy and charging rules function (PCRF).
- PCF policy control function
- PCRF policy and charging rules function
- the functioning of PCF or PCRF is enhanced by adding logs in error mode to capture one or more details such as but not limited to international mobile subscriber identity (IMSI), session ID, error code, destination host, and origin host in case of error occurred for debugging.
- IMSI international mobile subscriber identity
- the logs are added through a set of runtime configurable flags, which can be enabled/disabled logging. Some of the flags are as follows:
- An adaptive security appliance (ASA) error log enable flag e.g., asaErrorLogEnable
- a re-authentication answer (RAA) error log enable flag e.g., raaErrorLogEnable
- RAR-RAA message • A re-authentication answer (RAA) error log enable flag (e.g., raaErrorLogEnable) - capture the logs on specific Gx diameter interface’s RAR-RAA message.
- RAA re-authentication answer
- STR session termination request
- error log enable flag e.g., strErrorLogEnable
- a charging rule report log enable flag (e.g. , chargingRuleReportLogEnable) - capture the logs on specific Gx diameter interface’s RAR-RAA and CCR- CCA message.
- a subscriber profile repository (SPR) failure debug flag e.g., sprDipFailureDebugFlag
- SPR subscriber profile repository
- An emergency debug flag (e.g., emergencyDebugFlag) - capture IMSI and service gateway GPRS support node (SGSN) mobile country code (MCC), mobile network code (MNC) details for subscribers for which emergency request is received.
- SGSN service gateway GPRS support node
- MCC mobile country code
- MNC mobile network code
- the configurable flags can be configured during run time.
- the one or more flags can be enabled at the PCRF or PCF based on the received error message.
- Each of the added configurable flags is associated with different call flow details.
- a particular configurable flag required for the received error message is enabled and the corresponding call flow details are captured for debugging.
- capturing different call flow details using the configurable flags allow the creation of a separate log file to capture details such as specific diameter interface messages and HTTP2 interface service operations.
- the configurable flag is enabled to capture selected information element (IE) and diameter interface parameters (e.g., attribute-value pair (AVP) details) when an error message is received.
- IE information element
- AVP attribute-value pair
- one log file is created for all logs, thereby enabling identification of the captured details easily.
- the number of input and output operations are reduced as compared to the other log level.
- the system runs in the error mode only so as to save the processing resources during running traffic and to collect the logs as per requirement.
- the processing engine(s) 208 may include one or more units such as a creation unit 212, a processing unit 214 and a capturing unit 216.
- the processing engine(s) 208 is configured for troubleshooting of the network 106 by capturing a plurality of logs in an error mode.
- the creation unit 212 is configured to create a dynamic logger for capturing error details associated with an application.
- the dynamic logger is created for the application using a command line interface (CLI).
- CLI command line interface
- the processing unit 214 On detecting an error in one of the plurality of conditions, the processing unit 214 is configured to enable a runtime configurable flag corresponding to the one of the plurality of conditions using the dynamic logger.
- the capturing unit 216 is configured to capture the error details in a log corresponding to the one of plurality of conditions.
- the processing unit 214 is configured to disable the runtime configurable flag after capturing the error details in the log.
- the captured error details in the log are stored in one of a plurality of log files.
- the captured error details are used for error debugging.
- the details include an international mobile subscriber identity (IMSI), a session identity (ID), error code, destination host, origin host and an attribute-value pair (AVP).
- IMSI international mobile subscriber identity
- ID session identity
- ATM attribute-value pair
- the processing unit 214 is configured to enable or disable the plurality of runtime configurable flags for logging based on a plurality of conditions.
- the plurality of conditions includes an abort session request (ASR) - an abort session answer (ASA) messaging, a Re-auth request (RAR) - a Re-auth answer (RAA) messaging, a session termination request (STR) - a session termination answer (STA) messaging, charging rule reporting, creating a dummy a subscriber profile repository (SPR) profile, receiving an emergency request.
- the plurality of runtime configurable flags includes an ASA error log enable flag, a RAA error log enable flag, a STR error log enable flag, a charging rule report log enable flag, a SPR failure debug flag and an emergency debug flag.
- the processing unit 214 is configured to manage count of the plurality of log files. The plurality of log files is created based on file size and time duration. A plurality of old logs is overwritten based on the runtime configurable flags.
- FIG. 2 shows exemplary components of the system 108
- the system 108 may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 2. Additionally, or alternatively, one or more components of the system 108 may perform functions described as being performed by one or more other components of the system 108.
- FIG. 3 illustrates an exemplary representation of connection diagram
- a PCF and the PCRF 302 may communicate with a plurality of network functions through a plurality of interfaces.
- the plurality of network functions includes a deep packet inspection (DPI) 308, a session management function (SMF) 310, a charging function (CHF) 312, a binding support function (BSF) 314, a network repository function (NRF) 316, an access management function (AMF) 304, an application function (AF) 306, an online charging system (OCS) 318, a packet data network (PDN) gateway (PGW) 320, a network management system (NMS) 322, and a subscription profile repository (SPR) 324.
- DPI deep packet inspection
- SMF session management function
- CHF charging function
- BSF binding support function
- NRF network repository function
- AMF access management function
- AF application function
- OCS online charging system
- PDN packet data network gateway
- NMS network management system
- SPR subscription profile repository
- the AMF 304 may communicate with the PCF and the PCRF 302 via a N15 interface.
- the DPI 308 may communicate with the PCF and the PCRF 302 via a Sd interface.
- the SMF 310 may communicate with the PCF and the PCRF 302 via a N7 interface.
- the CHF 312 may communicate with the PCF and the PCRF 302 via a N28 interface.
- the BSF 314 may communicate with the PCF and the PCRF 302 via a Nbsf interface.
- the NRF 316 may communicate with the PCF and the PCRF 302 via a Nnrf interface.
- the AF 306 may communicate with the PCF and the PCRF 302 via a Rx interface.
- the PGW 320 may communicate with the PCF and the PCRF 302 via a Gx interface.
- the OCS 318 may communicate with the PCF and the PCRF 302 via a Sy interface.
- FIG. 4 illustrates an exemplary representation of flow diagram of a method 400 for troubleshooting of the network 106 by capturing a plurality of logs in an error mode, in accordance with some embodiments of the present disclosure.
- the method 400 includes creating a dynamic logger for capturing error details associated with an application.
- the dynamic logger is created for the application using a command line interface (CLI).
- CLI command line interface
- the method 400 includes, on detecting an error in one of a plurality of conditions, enabling a runtime configurable flag corresponding to the one of the plurality of conditions using the dynamic logger.
- the method 400 includes capturing the error details in a log corresponding to the one of plurality of conditions.
- the method 400 includes disabling the runtime configurable flag after capturing the error details in the log.
- the error details include an international mobile subscriber identity (IMSI), a session identity (ID), error codes, a destination host, an origin host and an attribute-value pair (AVP).
- IMSI international mobile subscriber identity
- ID session identity
- AVP attribute-value pair
- the captured error details in the log are stored in one of a plurality of log files.
- the captured error details are used for error debugging.
- the plurality of runtime configurable flags is enabled or disabled for logging based on a plurality of conditions.
- the plurality of conditions includes an abort session request (ASR) - an abort session answer (ASA) messaging, a Re-auth request (RAR) - a Re-auth answer (RAA) messaging, a session termination request (STR) - a session termination answer (STA) messaging, charging rule reporting, creating a dummy a subscriber profile repository (SPR) profile, receiving an emergency request.
- ASR abort session request
- RAR Re-auth request
- RAR Re-auth answer
- RAA Re-auth answer
- STR session termination request
- STA session termination answer
- the plurality of runtime configurable flags includes an adaptive security appliance (ASA) error log enable flag, a re-authentication answer (RAA) error log enable flag, a session termination request (STR) error log enable flag, a charging rule report log enable flag, a subscriber profile repository (SPR) failure debug flag and an emergency debug flag.
- ASA adaptive security appliance
- RAA re-authentication answer
- STR session termination request
- SPR subscriber profile repository
- FIG. 5 illustrates an example computer system 500 in which or with which the embodiments of the present disclosure may be implemented.
- the computer system 500 may include an external storage device 510, a bus 520, a main memory 530, a read-only memory 540, a mass storage device 550, a communication port(s) 560, and a processor 570.
- the processor 570 may include various modules associated with embodiments of the present disclosure.
- the communication port(s) 560 may be any of an RS-232 port for use with a modembased dialup connection, a 10/100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports.
- the communication ports(s) 560 may be chosen depending on a network, such as a Local Area Network (LAN), Wide Area Network (WAN), or any network to which the computer system 500 connects.
- LAN Local Area Network
- WAN Wide Area Network
- the main memory 530 may be Random Access Memory (RAM), or any other dynamic storage device commonly known in the art.
- the read-only memory 540 may be any static storage device(s) e.g., but not limited to, a Programmable Read Only Memory (PROM) chip for storing static information e.g., start-up or basic input/output system (BIOS) instructions for the processor 570.
- the mass storage device 550 may be any current or future mass storage solution, which can be used to store information and/or instructions.
- Exemplary mass storage solutions include, but are not limited to, Parallel Advanced Technology Attachment (PATA) or Serial Advanced Technology Attachment (SATA) hard disk drives or solid-state drives (internal or external, e.g., having Universal Serial Bus (USB) and/or Firewire interfaces).
- PATA Parallel Advanced Technology Attachment
- SATA Serial Advanced Technology Attachment
- USB Universal Serial Bus
- the bus 520 may communicatively couple the processor(s) 570 with the other memory, storage, and communication blocks.
- the bus 520 may be, e.g. a Peripheral Component Interconnect PCI) / PCI Extended (PCI-X) bus, Small Computer System Interface (SCSI), Universal Serial Bus (USB), or the like, for connecting expansion cards, drives, and other subsystems as well as other buses, such a front side bus (FSB), which connects the processor 570 to the computer system 500.
- PCI Peripheral Component Interconnect
- PCI-X PCI Extended
- SCSI Small Computer System Interface
- USB Universal Serial Bus
- operator and administrative interfaces e.g., a display, keyboard, and cursor control device may also be coupled to the bus 520 to support direct operator interaction with the computer system 500.
- Other operator and administrative interfaces can be provided through network connections connected through the communication port(s) 560.
- the present disclosure provides a system and method for troubleshooting using error logs in a network.
- the present disclosure provides a system and method for enabling logging in an error mode to capture details for error scenarios.
- the present disclosure provides a system and method for enabling or disabling logging in the error mode using runtime configurable flags.
- the present disclosure provides a system and method for allow the users to collect the logs as per requirement.
- the present disclosure provides a system and method for capture different call flow details in loggers.
- the present disclosure provides a system and method to use a set of runtime configurable flags for capturing specific information to determine activity or event that is performed within signalling messages. The number of input and output operations are reduced, thereby facilitating effective resource utilization.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Debugging And Monitoring (AREA)
Abstract
Systems and methods are described for troubleshooting using error logs in a network (106) In particular, the systems and methods are directed towards enhancement in functioning of PCF or PCRF (302). The functioning of PCF or PCRF (302) is enhanced by adding logs in error mode to capture specific details corresponding to error occurring in the application. The logs are added through a set of runtime configurable flags, which can be enabled/disabled for logging based on the error message received. Using the set of runtime configurable flags, selected 10 information can be logged to determine activity or event that is performed within the signalling messages. Moreover, with the selected information, the number of input and output operations are reduced, thereby facilitating effective resource utilization.
Description
SYSTEM AND METHOD FOR TROUBLESHOOTING USING ERROR LOGS IN A NETWORK
RESERVATION OF RIGHTS
[0001] A portion of the disclosure of this patent document contains material, which is subject to intellectual property rights such as but are not limited to, copyright, design, trademark, integrated circuit (IC) layout design, and/or trade dress protection, belonging to Jio Platforms Limited (JPL) or its affiliates (hereinafter referred as owner). The owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all rights whatsoever. All rights to such intellectual property are fully reserved by the owner.
FIELD OF INVENTION
[0002] The embodiments of the present disclosure generally relate to troubleshooting using error logs in a communications network. More particularly, the present disclosure relates to the system and method for troubleshooting using error logs in a network.
DEFINITION
[0003] As used in the present disclosure, the following terms are generally intended to have the meaning as set forth below, except to the extent that the context in which they are used to indicate otherwise.
[0004] Logging is the process of collecting and storing data over a period of time in different systems or environments. The logging involves tracking a variety of events.
[0005] An international mobile subscriber identity (IMSI) is a number that uniquely identifies every user equipment of a cellular network.
[0006] A session ID is a unique identification number that is generated by a server.
[0007] An error code (or a return code) is a numeric or alphanumeric code that indicates the nature of an error and, when possible, why it occurred.
[0008] A destination host enables a network connection to a remote host
system using a defined host name.
[0009] An attribute-value pair (AVP) refers to a fundamental representation in computing systems to express entities by describing their characteristics. The AVP consists of two elements: an attribute and a value.
BACKGROUND OF THE INVENTION
[0010] The following description of related art is intended to provide background information pertaining to the field of the disclosure. This section may include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section be used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of prior art.
[0011] Logging is an essential process for capturing and storing detailed information about the session occurring in an application. The logging facilitates troubleshooting issues, monitoring performance, security and auditing compliance. The logs give records indicating information about activity and events associated with the application. The logs contain information about the functioning of the system, and accordingly, the cause can be identified for the error occurred in the application. The logs also facilitate compliance with regulation requirements.
[0012] The logs are the "black box" of the application. They contain information about how your system works, so you can figure out what's wrong and fix it. The log levels can be classified into a plurality of categories such as fatal, error, warn, info, debug, trace, all, off, etc. In the production environment, most of the network nodes are running in an error mode. The error mode does not indicate that applications are running abnormally. In fact, the error mode indicates a failure of an important element to notice in the applications. In the error mode, write operations per second is low as compared to trace, debug, info and warn mode logging level. Therefore, the error mode is preferred for the system performance as compared to info mode.
[0013] However, in the error mode, the operator is not able to identify signalling errors and corresponding information elements (IE) and diameter
interface parameters such as attribute value pair (AVPs) - that are prerequisites for troubleshooting the issues. Some external probes or tools are available to check and identify the issues. But, at the application level, no feature or functionality is available to collect the required information. There is, therefore, a need in the art to provide a system and a method that can mitigate the problems associated with the prior arts.
SUMMARY
[0014] In an exemplary embodiment, a method for troubleshooting of a network by capturing a plurality of logs in an error mode is described. The method comprises creating a dynamic logger for capturing error details associated with an application. The method comprises on detecting an error in one of a plurality of conditions, enabling a runtime configurable flag corresponding to the one of the plurality of conditions using the dynamic logger. The method further comprises capturing the error details in a log corresponding to the one of plurality of conditions and disabling the runtime configurable flag after capturing the error details in the log.
[0015] In some embodiments, the captured error details in the log are stored in one of a plurality of log files. The captured error details are used for error debugging.
[0016] In some embodiments, the details include an international mobile subscriber identity (IMSI), a session identity (ID), error codes, a destination host, an origin host, and an attribute-value pair (A VP).
[0017] In some embodiments, the plurality of conditions includes an abort session request (ASR) - an abort session answer (ASA) messaging, a Re-auth request (RAR) - a Re-auth answer (RAA) messaging, a session termination request (STR) - a session termination answer (STA) messaging, charging rule reporting, creating a dummy a subscriber profile repository (SPR) profile, receiving an emergency request.
[0018] In some embodiments, a plurality of runtime configurable flags are used in error mode which includes an ASA error log enable flag, a RAA error log
enable flag, a STR error log enable flag, a charging rule report log enable flag, a SPR failure debug flag and an emergency debug flag.
[0019] In some embodiments, the plurality of log files is created based on file size and time duration. The method further comprises managing count of the plurality of log files.
[0020] In some embodiments, a plurality of old logs is overwritten based on the plurality of runtime configurable flags.
[0021] In another exemplary embodiment, a system for troubleshooting of a network by capturing a plurality of logs is described. The system comprises a creation unit configured to create a dynamic logger for capturing error details associated with an application. On detecting an error in one of a plurality of conditions, a processing unit is configured to enable a runtime configurable flag corresponding to the one of the plurality of conditions using the dynamic logger. A capturing unit is configured to capture the error details in a log corresponding to the one of plurality of conditions. The processing unit is configured to disable the runtime configurable flag after capturing the error details in the log.
[0022] In some embodiments, the captured error details in the log are stored in one of a plurality of log files. The captured error details are used for error debugging.
[0023] In some embodiments, the details include an international mobile subscriber identity (IMSI), a session identity (ID), error code, destination host, origin host and an attribute- value pair (A VP).
[0024] In some embodiments, the plurality of conditions includes an abort session request (ASR) - an abort session answer (ASA) messaging, a Re-auth request (RAR) - a Re-auth answer (RAA) messaging, a session termination request (STR) - a session termination answer (STA) messaging, charging rule reporting, creating a dummy a subscriber profile repository (SPR) profile, receiving an emergency request.
[0025] In some embodiments, a plurality of runtime configurable flags includes an ASA error log enable flag, a RAA error log enable flag, a STR error log
enable flag, a charging rule report log enable flag, a SPR failure debug flag and an emergency debug flag.
[0026] In some embodiments, the plurality of log files is created based on file size and time duration. The processing unit is configured to manage count of the plurality of log files.
[0027] In some embodiments, a plurality of old logs is overwritten based on the plurality of configurable flags.
[0028] In some embodiments, a user equipment is communicatively coupled with a system. The coupling comprises steps of receiving, by the system, a connection request and sending, by the system, an acknowledgment of the connection request to the UE. The coupling further comprises transmitting a plurality of signals in response to the connection request. The system is configured for troubleshooting of a network by capturing a plurality of logs in an error mode.
[0029] The foregoing general description of the illustrative embodiments and the following detailed description thereof are merely exemplary aspects of the teachings of this disclosure, and are not restrictive.
OBJECTS OF THE INVENTION
[0030] Some of the objects of the present disclosure, which at least one embodiment herein satisfies are as listed herein below.
[0031] An object of the present disclosure is to provide system and method for troubleshooting using error logs in a network.
[0032] Another object of the present disclosure is to enable logging in an error mode to capture details for error scenarios.
[0033] Another object of the present disclosure is to add multiple logs for multiple conditions in the error mode.
[0034] Another object of the present disclosure is to enable or disable logging in the error mode using runtime configurable flags.
[0035] Another object of the present disclosure is to allow the users to collect the logs as per requirement.
[0036] Another object of the present disclosure is to create a log file to
capture specific details.
[0037] Another object of the present disclosure is to capture different call flow details in loggers.
[0038] Another object of the present disclosure is to reduce the need for resources during running traffic.
BRIEF DESCRIPTION OF DRAWINGS
[0039] The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Some drawings may indicate the components using block diagrams and may not represent the internal circuitry of each component. It will be appreciated by those skilled in the art that disclosure of such drawings includes the disclosure of electrical components, electronic components, or circuitry commonly used to implement such components.
[0040] FIG. 1 illustrates an exemplary network architecture for implementing a system, in accordance with an embodiment of the present disclosure.
[0041] FIG. 2 illustrates an exemplary block diagram of the system, in accordance with an embodiment of the present disclosure.
[0042] FIG. 3 illustrates an exemplary representation of connection diagram of policy control function (PCF) or policy and charging rules function (PCRF) with other network elements through a corresponding interface, in accordance with some embodiments of the present disclosure.
[0043] FIG. 4 illustrates an exemplary representation of a flow diagram for troubleshooting a network by capturing a plurality of logs in an error mode, in accordance with some embodiments of the present disclosure.
[0044] FIG. 5 illustrates an exemplary computer system in which or with which the embodiments of the present disclosure may be implemented.
[0045] The foregoing shall be more apparent from the following more detailed description of the disclosure.
DETAILED DESCRIPTION
[0046] In the following description, for explanation, various specific details are outlined in order to provide a thorough understanding of embodiments of the present disclosure. It will be apparent, however, that embodiments of the present disclosure may be practiced without these specific details. Several features described hereafter can each be used independently of one another or with any combination of other features. An individual feature may not address all of the problems discussed above or might address only some of the problems discussed above. Some of the problems discussed above might not be fully addressed by any of the features described herein.
[0047] The ensuing description provides exemplary embodiments only and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the ensuing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing an exemplary embodiment. It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope of the disclosure as set forth.
[0048] Specific details are given in the following description to provide a thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details. For example, circuits, systems, networks, processes, and other components may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail. In other instances, well-known circuits, processes, algorithms, structures, and techniques may be shown without unnecessary detail to avoid obscuring the embodiments.
[0049] Also, it is noted that individual embodiments may be described as a process that is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the
operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process is terminated when its operations are completed but could have additional steps not included in a figure. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination can correspond to a return of the function to the calling function or the main function.
[0050] The word “exemplary” and/or “demonstrative” is used herein to mean serving as an example, instance, or illustration. For the avoidance of doubt, the subject matter disclosed herein is not limited by such examples. In addition, any aspect or design described herein as “exemplary” and/or “demonstrative” is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to preclude equivalent exemplary structures and techniques known to those of ordinary skill in the art. Furthermore, to the extent that the terms “includes,” “has,” “contains,” and other similar words are used in either the detailed description or the claims, such terms are intended to be inclusive like the term “comprising” as an open transition word without precluding any additional or other elements.
[0051] Reference throughout this specification to “one embodiment” or “an embodiment” or “an instance” or “one instance” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present disclosure. Thus, the appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0052] The terminology used herein is to describe particular embodiments only and is not intended to be limiting the disclosure. As used herein, the singular forms “a”, “an”, and “the” are intended to include the plural forms as well, unless the context indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the
presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. As used herein, the term “and/or” includes any combinations of one or more of the associated listed items.
[0053] Embodiments herein relate to systems and methods for troubleshooting using error logs in a network. The present disclosure is directed towards enhancement in functioning of policy control function (PCF) or policy and charging rules function (PCRF). In particular, the functioning of PCF or PCRF is enhanced by adding logs in an error mode to capture one or more specific details such as but not limited to, international mobile subscriber identity (IMSI), session ID, error code, destination host, and origin host in case of error occurred for debugging. The logs are added using a set of runtime configurable flags, which can be enabled/disabled for logging. Some of the flags are as follows:
• asaErrorEogEnable flag - captures the logs on specific Rx diameter interface’s abort session request (ASR) - abort session answer (ASA) message.
• raaErrorEogEnable flag - captures the logs on specific Gx diameter interface’s Re-Auth-Request (RAR) - Re-Auth-Answer (RAA) message.
• strErrorEogEnable flag - captures the logs on specific Rx diameter interface’s session termination request (STR) - session termination answer (STA) message.
• chargingRuleReportEogEnable flag - captures the logs on specific Gx diameter interface’s RAR-RAA and credit control request (CCR) - credit control answer (CCA) message.
• sprDipFailureDebugFlag - captures international mobile subscriber identity (IMSI) and access point network (APN) details for subscribers for which dummy subscriber profile repository (SPR) profile is created.
• emergencyDebugFlag - captures IMSI and service gateway GPRS support node (SGSN) mobile country code (MCC), mobile network code (MNC) details for subscribers for which emergency request is received.
[0054] In an embodiment, the configurable flags can be configured during run time. The one or more flags can be enabled at the PCRF or PCF based on the received error message. Each of the configurable flags is associated with different call flow details. When an error message is received, a particular configurable flag required for the received error message is enabled and the corresponding call flow details are captured for error debugging.
[0055] In an exemplary embodiment, capturing different call flow details using the configurable flags allows creation of a separate log file to capture specific details (e.g., diameter interface messages and hypertext transfer protocol -2 (HTTP2) interface service operations). When an error message is received, a corresponding configurable flag is enabled to capture selected information element (IE) and AVP details in the log. Therefore, one log file is created for all logs, thereby enabling identification of the captured details easily. The details corresponding to the selected IE and AVP details is captured through enabling one or more flags. This reduces number of input and output operations as compared to the other log level. Moreover, the system runs in error mode so as to save the processing resources during running traffic and to collect the logs as per requirement.
[0056] In an embodiment, a dynamic logger is created for capturing specific information. The logger can be configured using the command line interface with the application. Using configurable flags, specific information can be logged so that it can be easily determined what activity or event are performed within the signalling messages.
[0057] In an embodiment, different log files can be created based on file size and time duration. Additionally, or alternatively, file count can also be manageable and old files may be overwritten based on configurable values.
[0058] The various embodiments throughout the disclosure will be explained in more detail with reference to FIGs. 1-5.
[0059] FIG. 1 illustrates an exemplary network architecture 100 for implementing a system 108 for troubleshooting a network (106), in accordance with an embodiment of the present disclosure.
[0060] As illustrated in FIG. 1, one or more computing devices 104-1, 104-
2. . .104-N may be connected to the system 108 through the network 106. A person of ordinary skill in the art will understand that the one or more computing devices 104-1, 104-2... 104-N may be collectively referred as computing devices 104 and individually referred as a computing device 104. One or more users 102-1, 102-
2...102-N may provide one or more requests to the system 108. A person of ordinary skill in the art will understand that the one or more users 102-1, 102-
2...102-N may be collectively referred as users 102 and individually referred as a user 102. Further, the computing devices 104 may also be referred as a user equipment (UE) 104 or as UEs 104 throughout the disclosure.
[0061] In an embodiment, the computing device 104 may include, but not be limited to, a mobile, a laptop, etc. Further, the computing device 104 may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as a camera, audio aid, microphone, or keyboard. Furthermore, the computing device 104 may include a mobile phone, smartphone, virtual reality (VR) devices, augmented reality (AR) devices, a laptop, a general- purpose computer, a desktop, a personal digital assistant, a tablet computer, and a mainframe computer. Additionally, input devices for receiving input from the user 102 such as a touchpad, touch-enabled screen, electronic pen, and the like may be used.
[0062] In an embodiment, the network 106 may include, by way of example but not limitation, at least a portion of one or more networks having one or more nodes that transmit, receive, forward, generate, buffer, store, route, switch, process, or a combination thereof, etc. one or more messages, packets, signals, waves, voltage or current levels, some combination thereof, or so forth. The network 106 may also include, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet- switched network, a circuit- switched network, an ad hoc network, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof.
[0063] In an embodiment, the user equipment 104 is communicatively
coupled with the system 108. The system 108 may receive a connection request from the UE 104. The system 108 may send an acknowledgment of the connection request to the UE 104. The UE 104 may transmit a plurality of signals in response to the connection request. The system 108 may be configured for troubleshooting of the network 106 by capturing a plurality of error logs in an error mode.
[0064] FIG. 2 illustrates an example block diagram 200 of the system 108, in accordance with an embodiment of the present disclosure.
[0065] Referring to FIG. 2, in an embodiment, the system 108 may include one or more processor(s) 202. The one or more processor(s) 202 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, logic circuitries, and/or any devices that process data based on operational instructions. Among other capabilities, the one or more processor(s) 202 may be configured to fetch and execute computer-readable instructions stored in a memory 204 of the system 108. The memory 204 may be configured to store one or more computer-readable instructions or routines in a non-transitory computer readable storage medium, which may be fetched and executed to create or share data packets over a network service. The memory 204 may comprise any non-transitory storage device including, for example, volatile memory such as random-access memory (RAM), or non-volatile memory such as erasable programmable read only memory (EPROM), flash memory, and the like.
[0066] In an embodiment, the system 108 may include an interface(s) 206. The interface(s) 206 may comprise a variety of interfaces, for example, interfaces for data input and output devices (I/O), storage devices, and the like. The interface(s) 206 may facilitate communication through the system 108. The interface(s) 206 may also provide a communication pathway for one or more components of the system 108. Examples of such components include, but are not limited to, processing engine(s) 208 and a database 210. Further, the processing engine(s) 208 may include one or more engine(s) such as, but not limited to, an input/output engine, an identification engine and an optimization engine.
[0067] In an embodiment, the processing engine(s) 208 may be
implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processing engine(s) 208. In examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processing engine(s) 208 may be processorexecutable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processing engine(s) 208 may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the machine-readable storage medium may store instructions that, when executed by the processing resource, implement the processing engine(s) 208. In such examples, the system may comprise the machine- readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine-readable storage medium may be separate but accessible to the system and the processing resource. In other examples, the processing engine(s) 208 may be implemented by electronic circuitry.
[0068] In an embodiment, the database 210 includes data that may be either stored or generated as a result of functionalities implemented by any of the components of the processor 202 or the processing engines 208. In an embodiment, the database 210 may be separate from the system 108. In an embodiment, the database 210 may be indicative of including, but not limited to, a relational database, a distributed database, a cloud-based database, or the like.
[0069] In an embodiment, the processing engine(s) 208 is directed towards enhancement in the functioning of policy control function (PCF) or policy and charging rules function (PCRF). In particular, the functioning of PCF or PCRF is enhanced by adding logs in error mode to capture one or more details such as but not limited to international mobile subscriber identity (IMSI), session ID, error code, destination host, and origin host in case of error occurred for debugging. The logs are added through a set of runtime configurable flags, which can be enabled/disabled logging. Some of the flags are as follows:
• An adaptive security appliance (ASA) error log enable flag (e.g., asaErrorLogEnable) - capture the logs on specific Rx diameter interface’s
ASR-ASA message.
• A re-authentication answer (RAA) error log enable flag (e.g., raaErrorLogEnable) - capture the logs on specific Gx diameter interface’s RAR-RAA message.
• A session termination request (STR) error log enable flag (e.g., strErrorLogEnable) - capture the logs on specific Rx diameter interface’s STR-STA message.
• A charging rule report log enable flag (e.g. , chargingRuleReportLogEnable) - capture the logs on specific Gx diameter interface’s RAR-RAA and CCR- CCA message.
• A subscriber profile repository (SPR) failure debug flag (e.g., sprDipFailureDebugFlag) - capture IMSI and APN details for subscribers for which dummy SPR profile is created.
• An emergency debug flag (e.g., emergencyDebugFlag) - capture IMSI and service gateway GPRS support node (SGSN) mobile country code (MCC), mobile network code (MNC) details for subscribers for which emergency request is received.
[0070] In an embodiment, the configurable flags can be configured during run time. The one or more flags can be enabled at the PCRF or PCF based on the received error message. Each of the added configurable flags is associated with different call flow details. When an error message is received, a particular configurable flag required for the received error message is enabled and the corresponding call flow details are captured for debugging. In an exemplary embodiment, capturing different call flow details using the configurable flags allow the creation of a separate log file to capture details such as specific diameter interface messages and HTTP2 interface service operations. The configurable flag is enabled to capture selected information element (IE) and diameter interface parameters (e.g., attribute-value pair (AVP) details) when an error message is received. Therefore, one log file is created for all logs, thereby enabling identification of the captured details easily. As capturing details corresponding to the selected IE and AVP details through enabling one or more flags, the number of
input and output operations are reduced as compared to the other log level. Moreover, the system runs in the error mode only so as to save the processing resources during running traffic and to collect the logs as per requirement.
[0071] In an embodiment, the processing engine(s) 208 may include one or more units such as a creation unit 212, a processing unit 214 and a capturing unit 216. The processing engine(s) 208 is configured for troubleshooting of the network 106 by capturing a plurality of logs in an error mode.
[0072] The creation unit 212 is configured to create a dynamic logger for capturing error details associated with an application. In an aspect, the dynamic logger is created for the application using a command line interface (CLI).
[0073] On detecting an error in one of the plurality of conditions, the processing unit 214 is configured to enable a runtime configurable flag corresponding to the one of the plurality of conditions using the dynamic logger.
[0074] The capturing unit 216 is configured to capture the error details in a log corresponding to the one of plurality of conditions. The processing unit 214 is configured to disable the runtime configurable flag after capturing the error details in the log. The captured error details in the log are stored in one of a plurality of log files. The captured error details are used for error debugging. The details include an international mobile subscriber identity (IMSI), a session identity (ID), error code, destination host, origin host and an attribute-value pair (AVP). Each of plurality of added logs is associated with distinct call flow.
[0075] The processing unit 214 is configured to enable or disable the plurality of runtime configurable flags for logging based on a plurality of conditions. The plurality of conditions includes an abort session request (ASR) - an abort session answer (ASA) messaging, a Re-auth request (RAR) - a Re-auth answer (RAA) messaging, a session termination request (STR) - a session termination answer (STA) messaging, charging rule reporting, creating a dummy a subscriber profile repository (SPR) profile, receiving an emergency request. The plurality of runtime configurable flags includes an ASA error log enable flag, a RAA error log enable flag, a STR error log enable flag, a charging rule report log enable flag, a SPR failure debug flag and an emergency debug flag.
[0076] The processing unit 214 is configured to manage count of the plurality of log files. The plurality of log files is created based on file size and time duration. A plurality of old logs is overwritten based on the runtime configurable flags.
[0077] Although FIG. 2 shows exemplary components of the system 108, in other embodiments, the system 108 may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 2. Additionally, or alternatively, one or more components of the system 108 may perform functions described as being performed by one or more other components of the system 108.
[0078] FIG. 3 illustrates an exemplary representation of connection diagram
300 of PCF or PCRF with other network elements connected through a corresponding interface, in accordance with some embodiments of the present disclosure.
[0079] As shown in FIG. 3, a PCF and the PCRF 302 may communicate with a plurality of network functions through a plurality of interfaces. The plurality of network functions includes a deep packet inspection (DPI) 308, a session management function (SMF) 310, a charging function (CHF) 312, a binding support function (BSF) 314, a network repository function (NRF) 316, an access management function (AMF) 304, an application function (AF) 306, an online charging system (OCS) 318, a packet data network (PDN) gateway (PGW) 320, a network management system (NMS) 322, and a subscription profile repository (SPR) 324.
[0080] The AMF 304 may communicate with the PCF and the PCRF 302 via a N15 interface. The DPI 308 may communicate with the PCF and the PCRF 302 via a Sd interface. The SMF 310 may communicate with the PCF and the PCRF 302 via a N7 interface. The CHF 312 may communicate with the PCF and the PCRF 302 via a N28 interface. The BSF 314 may communicate with the PCF and the PCRF 302 via a Nbsf interface. The NRF 316 may communicate with the PCF and the PCRF 302 via a Nnrf interface. The AF 306 may communicate with the PCF and the PCRF 302 via a Rx interface. The PGW 320 may communicate with the
PCF and the PCRF 302 via a Gx interface. The OCS 318 may communicate with the PCF and the PCRF 302 via a Sy interface.
[0081] FIG. 4 illustrates an exemplary representation of flow diagram of a method 400 for troubleshooting of the network 106 by capturing a plurality of logs in an error mode, in accordance with some embodiments of the present disclosure.
[0082] At step 402, the method 400 includes creating a dynamic logger for capturing error details associated with an application. In an aspect, the dynamic logger is created for the application using a command line interface (CLI).
[0083] At step 404, the method 400 includes, on detecting an error in one of a plurality of conditions, enabling a runtime configurable flag corresponding to the one of the plurality of conditions using the dynamic logger.
[0084] At step 406, the method 400 includes capturing the error details in a log corresponding to the one of plurality of conditions.
[0085] At step 408, the method 400 includes disabling the runtime configurable flag after capturing the error details in the log.
[0086] The error details include an international mobile subscriber identity (IMSI), a session identity (ID), error codes, a destination host, an origin host and an attribute-value pair (AVP). The plurality of logs files is created based on file size and time duration. Count of the plurality of logs is managed.
[0087] In an embodiment, the captured error details in the log are stored in one of a plurality of log files. The captured error details are used for error debugging.
[0088] The plurality of runtime configurable flags is enabled or disabled for logging based on a plurality of conditions. The plurality of conditions includes an abort session request (ASR) - an abort session answer (ASA) messaging, a Re-auth request (RAR) - a Re-auth answer (RAA) messaging, a session termination request (STR) - a session termination answer (STA) messaging, charging rule reporting, creating a dummy a subscriber profile repository (SPR) profile, receiving an emergency request. The plurality of runtime configurable flags includes an adaptive security appliance (ASA) error log enable flag, a re-authentication answer (RAA) error log enable flag, a session termination request (STR) error log enable flag, a
charging rule report log enable flag, a subscriber profile repository (SPR) failure debug flag and an emergency debug flag. A plurality of old logs is overwritten based on the plurality of runtime configurable flags.
[0089] FIG. 5 illustrates an example computer system 500 in which or with which the embodiments of the present disclosure may be implemented.
[0090] As shown in FIG. 5, the computer system 500 may include an external storage device 510, a bus 520, a main memory 530, a read-only memory 540, a mass storage device 550, a communication port(s) 560, and a processor 570. A person skilled in the art will appreciate that the computer system 500 may include more than one processor and communication ports. The processor 570 may include various modules associated with embodiments of the present disclosure. The communication port(s) 560 may be any of an RS-232 port for use with a modembased dialup connection, a 10/100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports. The communication ports(s) 560 may be chosen depending on a network, such as a Local Area Network (LAN), Wide Area Network (WAN), or any network to which the computer system 500 connects.
[0091] In an embodiment, the main memory 530 may be Random Access Memory (RAM), or any other dynamic storage device commonly known in the art. The read-only memory 540 may be any static storage device(s) e.g., but not limited to, a Programmable Read Only Memory (PROM) chip for storing static information e.g., start-up or basic input/output system (BIOS) instructions for the processor 570. The mass storage device 550 may be any current or future mass storage solution, which can be used to store information and/or instructions. Exemplary mass storage solutions include, but are not limited to, Parallel Advanced Technology Attachment (PATA) or Serial Advanced Technology Attachment (SATA) hard disk drives or solid-state drives (internal or external, e.g., having Universal Serial Bus (USB) and/or Firewire interfaces).
[0092] In an embodiment, the bus 520 may communicatively couple the processor(s) 570 with the other memory, storage, and communication blocks. The bus 520 may be, e.g. a Peripheral Component Interconnect PCI) / PCI Extended
(PCI-X) bus, Small Computer System Interface (SCSI), Universal Serial Bus (USB), or the like, for connecting expansion cards, drives, and other subsystems as well as other buses, such a front side bus (FSB), which connects the processor 570 to the computer system 500.
[0093] In another embodiment, operator and administrative interfaces, e.g., a display, keyboard, and cursor control device may also be coupled to the bus 520 to support direct operator interaction with the computer system 500. Other operator and administrative interfaces can be provided through network connections connected through the communication port(s) 560. Components described above are meant only to exemplify various possibilities. In no way should the aforementioned exemplary computer system 500 limit the scope of the present disclosure.
[0094] While considerable emphasis has been placed herein on the preferred embodiments, it will be appreciated that many embodiments can be made and that many changes can be made in the preferred embodiments without departing from the principles of the disclosure. These and other changes in the preferred embodiments of the disclosure will be apparent to those skilled in the art from the disclosure herein, whereby it is to be distinctly understood that the foregoing descriptive matter is to be implemented merely as illustrative of the disclosure and not as a limitation.
ADVANTAGES OF THE INVENTION
[0095] The present disclosure provides a system and method for troubleshooting using error logs in a network.
[0096] The present disclosure provides a system and method for enabling logging in an error mode to capture details for error scenarios.
[0097] The present disclosure provides a system and method for enabling or disabling logging in the error mode using runtime configurable flags.
[0098] The present disclosure provides a system and method for allow the users to collect the logs as per requirement.
[0099] The present disclosure provides a system and method for capture
different call flow details in loggers.
[00100] The present disclosure provides a system and method to use a set of runtime configurable flags for capturing specific information to determine activity or event that is performed within signalling messages. The number of input and output operations are reduced, thereby facilitating effective resource utilization.
Also, reducing the need for resources during running traffic.
Claims
1. A method (400) for troubleshooting of a network (106) by capturing a plurality of logs in an error mode, the method (400) comprising: creating (402) a dynamic logger for capturing error details associated with an application; on detecting an error in one of a plurality of conditions, enabling (404) a runtime configurable flag corresponding to the one of the plurality of conditions using the dynamic logger; capturing (406) the error details in a log corresponding to the one of plurality of conditions; and disabling (408) the runtime configurable flag after capturing the error details in the log.
2. The method (400) as claimed in claim 1, wherein the captured error details in the log are stored in one of a plurality of log files, wherein the captured error details are used for error debugging.
3. The method (400) as claimed in claim 1, wherein the captured error details include an international mobile subscriber identity (IMSI), a session identity (ID), error codes, a destination host, an origin host, and an attribute-value pair (A VP).
4. The method (400) as claimed in claim 1 , wherein the plurality of conditions includes an abort session request (ASR) - an abort session answer (ASA) messaging, a Re-auth request (RAR) - a Re- auth answer (RAA) messaging, a session termination request (STR) - a session termination answer (ST A) messaging, charging rule reporting, creating a dummy a subscriber profile repository (SPR) profile, and receiving an emergency request.
5. The method (400) as claimed in claim 1, wherein a plurality of runtime configurable flags includes an ASA error log enable flag, a RAA error log enable flag, a STR error log enable flag, a charging rule report log enable flag, a SPR failure debug flag and an emergency debug flag.
6. The method (400) as claimed in claim 2, wherein the plurality of log files is created based on file size and time duration, wherein managing count of the plurality of log files.
7. The method (400) as claimed in claim 1, wherein a plurality of old logs is overwritten based on a plurality of runtime configurable flags.
8. A system (108) for troubleshooting of a network (106) by capturing a plurality of logs in an error mode, the system (108) comprising: a creation unit (212) configured to create a dynamic logger for capturing error details associated with an application; on detecting an error in one of a plurality of conditions, a processing unit (214) is configured to enable a runtime configurable flag corresponding to the one of the plurality of conditions using the dynamic logger; a capturing unit (216) configured to capture the error details in a log corresponding to the one of plurality of conditions; and the processing unit (214) is configured to disable the runtime configurable flag after capturing the error details in the log.
9. The system (108) as claimed in claim 8, wherein the captured error details in the log are stored in one of a plurality of log files, wherein the captured error details are used for error debugging.
10. The system (108) as claimed in claim 8, wherein
the captured error details include an international mobile subscriber identity (IMSI), a session identity (ID), error code, destination host, origin host and an attribute-value pair (A VP).
11. The system (108) as claimed in claim 8, wherein the plurality of conditions includes an abort session request (ASR) - an abort session answer (ASA) messaging, a Re-auth request (RAR) - a Re- auth answer (RAA) messaging, a session termination request (STR) - a session termination answer (ST A) messaging, charging rule reporting, creating a dummy a subscriber profile repository (SPR) profile, and receiving an emergency request.
12. The system (108) as claimed in claim 8, wherein a plurality of runtime configurable flags includes an ASA error log enable flag, a RAA error log enable flag, a STR error log enable flag, a charging rule report log enable flag, a SPR failure debug flag and an emergency debug flag.
13. The system (108) as claimed in claim 2, wherein the plurality of log files is created based on file size and time duration, wherein the processing unit (214) is configured to manage count of the plurality of log files.
14. The system (108) as claimed in claim 8, wherein a plurality of old logs is overwritten based on a plurality of configurable flags.
15. A user equipment (104) communicatively coupled with a system (108), the coupling comprises steps of: 08), a connection request;
sending, by the system (108), an acknowledgment of the connection request to the UE (104); and transmitting a plurality of signals in response to the connection request, wherein the system (108) is configured for troubleshooting of a network (106) by capturing a plurality of logs in an error mode as claimed in claim 8.
16. A computer program product comprising a non-transitory computer- readable medium comprising instructions that, when executed by one or more processors, cause the one or more processors to execute a method (400) for troubleshooting of a network (106) by capturing a plurality of logs in an error mode, the method (400) comprising: creating (402) a dynamic logger for capturing error details associated with an application; on detecting an error in one of a plurality of conditions, enabling (404) a runtime configurable flag corresponding to the one of the plurality of conditions using the dynamic logger; capturing (406) the error details in a log corresponding to the one of plurality of conditions; and disabling (408) the runtime configurable flag after capturing the error details in the log.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| IN202321048617 | 2023-07-19 | ||
| IN202321048617 | 2023-07-19 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025017690A1 true WO2025017690A1 (en) | 2025-01-23 |
Family
ID=94281334
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/IN2024/051257 Ceased WO2025017690A1 (en) | 2023-07-19 | 2024-07-16 | System and method for troubleshooting using error logs in a network |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2025017690A1 (en) |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020198983A1 (en) * | 2001-06-26 | 2002-12-26 | International Business Machines Corporation | Method and apparatus for dynamic configurable logging of activities in a distributed computing system |
-
2024
- 2024-07-16 WO PCT/IN2024/051257 patent/WO2025017690A1/en not_active Ceased
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020198983A1 (en) * | 2001-06-26 | 2002-12-26 | International Business Machines Corporation | Method and apparatus for dynamic configurable logging of activities in a distributed computing system |
Non-Patent Citations (1)
| Title |
|---|
| ANONYMOUS: "Understand and Troubleshoot RADIUS CoA and Disconnect Messages", HTTPS://WWW.CISCO.COM, CISCO SYSTEMS, INC., 17 December 2015 (2015-12-17), pages 1 - 7, XP093268615, Retrieved from the Internet <URL:https://www.cisco.com/c/en/us/support/docs/wireless/ggsn-gateway-gprs-support-node/119397-technote-radiusdm-00.html> * |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110096496A (en) | A kind of form validation method, relevant apparatus and equipment | |
| CN109582655B (en) | Method and device for positioning system log and computer readable storage medium | |
| CN109996201A (en) | A kind of Network Access Method and the network equipment | |
| CN108966226A (en) | The method for processing business and device of identity-based information | |
| CN112529632B (en) | Charging method, device, system, medium and equipment based on stream engine | |
| CN113489726B (en) | Flow limiting method and device | |
| WO2023275782A1 (en) | Systems and methods for locating devices | |
| CN108256311B (en) | Authorization authentication method and device and electronic equipment | |
| CN106815772A (en) | Electric power data report method and device | |
| US20260019454A1 (en) | System and method for reuse of session parameters across different networks | |
| WO2016078090A1 (en) | Charging control device, method and system | |
| CN105519073A (en) | Subscriber-specific tracing in communications | |
| CN103326892B (en) | The operating method and device of web interface | |
| CN110766540A (en) | Bill verification and cancellation method and device and electronic equipment | |
| CN106161123B (en) | Detection method and detection device for electronic channel congestion | |
| WO2016029698A1 (en) | Policy control method and system and gateway | |
| CN111510415A (en) | Method, device, equipment and storage medium for sharing and identifying blacklist number | |
| WO2025017695A1 (en) | System and method for throttling services associated with users in a network | |
| CN109905249A (en) | Method, apparatus, device and medium for processing charging message | |
| CN114980186A (en) | Method and device for detecting false sending of short message and electronic equipment | |
| CN116132204A (en) | Data processing method, device, electronic equipment and readable storage medium | |
| WO2025017699A1 (en) | System and method for maintaining successful and failed events of network elements in clear codes | |
| US20260005924A1 (en) | System and method for network slicing continuity provisioning across network operators | |
| WO2025017635A1 (en) | System and method for identifying network entities causing errors and timeouts | |
| CN110324802A (en) | A kind of charge on traffic method and MME |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 24842681 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2024842681 Country of ref document: EP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
