Log data processing methods and related equipment

By transmitting multimedia communication and log data through different long-lived connections between the client and the server, the problems of untimely and missing log data uploads are solved, enabling timely and complete upload of log data without affecting communication quality.

CN119697006BActive Publication Date: 2025-12-02MASHANG CONSUMER FINANCE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411539373.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-10-30
Publication Date
2025-12-02
Estimated Expiration
2044-10-30

AI Technical Summary

Technical Problem

When a client transmits multimedia communication data via a long connection, it is difficult to upload the log data generated locally on the client to the server in a timely and complete manner without affecting the quality of multimedia communication data.

Method used

Multimedia communication data is transmitted through a first long connection established between the client and the server, and network status information and local log data are obtained, encapsulated, and then uploaded through a second long connection. When the second long connection is closed, the log data that has not been uploaded is stored in a local log file and uploaded after reconnection.

Benefits of technology

This ensures that multimedia log data is uploaded to the log server without any omissions, avoids data loss due to network connection drops, and does not affect the transmission quality of multimedia communication data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119697006B_ABST
    Figure CN119697006B_ABST
Patent Text Reader

Abstract

This disclosure provides a log data processing method and related equipment, relating to the field of multimedia communication technology. The method includes: transmitting multimedia communication data to a multimedia server via a first long connection, and obtaining network status information of the first long connection and local log data of the client; encapsulating the network status information and local log data to obtain multimedia log data carrying associated information of the multimedia communication data; transmitting the multimedia log data to a log server via a second long connection; storing the multimedia log data in a local log file of the client in response to the disconnection of the second long connection; and uploading the local log file to the log server via the reconnected second long connection in response to the reconnection of the second long connection. This disclosure enables the complete uploading of local log data generated by the client during multimedia communication data transmission to the log server.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of multimedia communication and data communication technology, and in particular to a log data processing method and related equipment. Background Technology

[0002] With the continuous improvement of network bandwidth and speed, more and more multimedia communication and data communication applications have emerged, especially various real-time multimedia communication and data communication applications (such as audio / video communication applications or live streaming applications), which have greatly shortened the distance between people and provided users with a more convenient and efficient communication experience.

[0003] For real-time multimedia communication data communication applications, accurately obtaining log data from the client during the real-time multimedia communication data transmission process helps application developers effectively monitor the running status of the application, promptly identify problems, and take measures to solve them, thereby improving application stability and user experience.

[0004] It should be noted that the information disclosed in the background section above is only used to enhance the understanding of the background of this disclosure, and therefore may include information that does not constitute prior art known to those skilled in the art. Summary of the Invention

[0005] This disclosure provides a log data processing method and related equipment to solve the technical problem that when a client transmits multimedia communication data through a long connection, it is difficult to upload the log data generated locally by the client to the server in a timely and complete manner without affecting the quality of multimedia communication data.

[0006] Other features and advantages of this disclosure will become apparent from the following detailed description, or may be learned in part from practice of this disclosure.

[0007] According to one aspect of this disclosure, a log data processing method is provided, applied to a client, comprising: transmitting multimedia communication data to a multimedia server via a first long connection, and obtaining network status information of the first long connection and local log data of the client; encapsulating the network status information and the local log data to obtain multimedia log data, wherein the multimedia log data carries association information of the multimedia communication data; transmitting the multimedia log data to a log server via a second long connection; in response to the disconnection of the second long connection, storing the multimedia log data in one or more local log files of the client; and in response to the reconnection of the second long connection, uploading the one or more local log files to the log server via the reconnected second long connection.

[0008] According to another aspect of this disclosure, a log data processing method is also provided, applied to a log server, comprising: receiving multimedia log data sent by a client through a second long connection, wherein the multimedia log data is obtained by the client encapsulating network status information of a first long connection and local log data of the client, the first long connection being used by the client to transmit multimedia communication data with a multimedia server, and the multimedia log data carrying association information of the multimedia communication data; receiving a reconnection request sent by the client, and reconnecting the second long connection if the client's token information has not exceeded the token expiration time; in response to the reconnection of the second long connection, receiving one or more local log files uploaded by the client through the reconnected second long connection, wherein the one or more local log files store multimedia log data generated by the client during the period when the second long connection was disconnected, and the file size of each local log file does not exceed a preset file size threshold.

[0009] According to another aspect of this disclosure, a client is also provided, comprising: a first long-connection data transmission module, configured to transmit multimedia communication data with a multimedia server via a first long connection, and to obtain network status information of the first long connection and local log data of the client; a data processing module, configured to encapsulate the network status information and the local log data to obtain multimedia log data, wherein the multimedia log data carries association information of the multimedia communication data; a second long-connection data transmission module, configured to transmit the multimedia log data to a log server via a second long connection; a log file local storage module, configured to store the multimedia log data in one or more local log files of the client in response to the disconnection of the second long connection, wherein the file size of each local log file does not exceed a preset file size threshold; and a log file upload module, configured to upload the one or more local log files to the log server via the reconnected second long connection in response to the reconnection of the second long connection.

[0010] According to another aspect of this disclosure, a server is also provided, comprising: a log data receiving module, configured to receive multimedia log data sent by a client through a second long connection, wherein the multimedia log data is obtained by the client encapsulating network status information of a first long connection and local log data of the client, the first long connection being used by the client to transmit multimedia communication data with a multimedia server, and the multimedia log data carrying association information of the multimedia communication data; a network connection reconnection module, configured to receive a reconnection request sent by the client, and reconnect the second long connection if the client's token information has not exceeded the token expiration time; and a log file receiving module, configured to, in response to the reconnection of the second long connection, receive one or more local log files uploaded by the client through the reconnected second long connection, wherein the one or more local log files store multimedia log data generated by the client during the period when the second long connection was disconnected, and the file size of each local log file does not exceed a preset file size threshold.

[0011] According to another aspect of this disclosure, an electronic device is also provided, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to perform the log data processing method described in any one of the preceding claims by executing the executable instructions.

[0012] According to another aspect of this disclosure, a computer-readable storage medium is also provided, on which a computer program is stored, which, when executed by a processor, implements the log data processing method described in any of the preceding claims.

[0013] According to another aspect of this disclosure, a computer program product is also provided, comprising: a computer program or instructions that, when executed by a processor, implement the log data processing method described in any one of the preceding claims.

[0014] The log data processing method and related equipment provided in this embodiment obtain network status information of the first long connection and local log data of the client during the process of the client transmitting multimedia communication data with the multimedia server through the first long connection. After encapsulating the network status information of the first long connection and the local log data of the client to obtain multimedia log data carrying multimedia communication data association information, the data is transmitted to the log data server through the second long connection. Since the multimedia log data and the multimedia communication data are transmitted through different long connections, the disconnection of the long connection for transmitting multimedia communication data will not affect the transmission of multimedia log data.

[0015] Furthermore, considering that the second long connection for transmitting multimedia log data may also be disconnected, storing the multimedia log data that could not be transmitted after the second long connection is disconnected in the client's local log file, and uploading the local log file to the log server after the second long connection is reconnected, can ensure that multimedia log data is uploaded to the log server without any omissions.

[0016] The solution provided by the embodiments of this disclosure can timely and completely upload the network status information and local log data of the client during the transmission of multimedia communication data through a long connection to the log server, so that the log server can monitor the client's multimedia communication process based on the received data.

[0017] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description

[0018] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure. It is obvious that the drawings described below are merely some embodiments of this disclosure, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.

[0019] Figure 1 This diagram illustrates an application system architecture according to an embodiment of the present disclosure.

[0020] Figure 2 This illustration shows a flowchart of a log data processing method applied to the client side in an embodiment of the present disclosure;

[0021] Figure 3 This diagram illustrates a flowchart of encapsulating network status information and local log data in an embodiment of the present disclosure.

[0022] Figure 4 This diagram illustrates a method for determining a file size threshold for a local log file according to an embodiment of the present disclosure.

[0023] Figure 5 This diagram illustrates a method for reconnecting a long-lived connection according to an embodiment of the present disclosure.

[0024] Figure 6 This diagram illustrates a method for uploading a local log file according to an embodiment of the present disclosure.

[0025] Figure 7 This invention discloses a flowchart illustrating another method for uploading a local log file according to an embodiment of the present disclosure.

[0026] Figure 8This illustration shows a flowchart of a log data processing method applied to the server side in an embodiment of the present disclosure;

[0027] Figure 9 This diagram illustrates a flowchart of a multimedia log data parsing method according to an embodiment of the present disclosure;

[0028] Figure 10 This diagram illustrates a flowchart of a token information verification method according to an embodiment of the present disclosure.

[0029] Figure 11 This illustration shows a flowchart of a method for receiving a local log file according to an embodiment of the present disclosure;

[0030] Figure 12 This diagram illustrates a flowchart of a client uploading event log data via a long connection in an embodiment of this disclosure.

[0031] Figure 13 This diagram illustrates a flowchart of a client uploading WebRTC project data logging data via a WebSocket connection, according to an embodiment of this disclosure.

[0032] Figure 14 This diagram illustrates the internal components of a client in an embodiment of the present disclosure.

[0033] Figure 15 This diagram illustrates the internal components of a log server according to an embodiment of the present disclosure.

[0034] Figure 16 A structural block diagram of an electronic device according to an embodiment of the present disclosure is shown. Detailed Implementation

[0035] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, they are provided so that this disclosure will be more comprehensive and complete, and will fully convey the concept of the exemplary embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.

[0036] Furthermore, the accompanying drawings are merely illustrative of this disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted. Some block diagrams shown in the drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.

[0037] To facilitate understanding, before introducing the embodiments of this disclosure, the following explanations are provided for several terms involved in the embodiments of this disclosure:

[0038] Persistent connection: A network connection established between a client and a server that can maintain its connection state for a relatively long period of time (token expiration time). Once a persistent connection is established, the client and server can send and receive messages at any time without needing to re-establish the connection.

[0039] Data tracking: This involves embedding code at specific process and operation nodes within an application (typically a mobile or web application) to record user behavior data or application status. This data is usually output as logs for subsequent analysis and optimization.

[0040] WebSocket: A network communication protocol that provides a channel for full-duplex communication over a single TCP connection.

[0041] WebRTC: Web Real-Time Communication is an open-source technology that allows web pages or applications to transmit real-time multimedia communication data (such as audio and video) through direct peer-to-peer communication without the need for any additional plugins or software, and can work directly in a browser.

[0042] As described in the background section of this application, in order to analyze the running status or user behavior data of the multimedia service application on the client during the transmission of multimedia communication data between the client and the multimedia server through a long connection, the client needs to upload its local log data during the multimedia communication data transmission process to the log server for analysis.

[0043] If log data is uploaded in real time through a long connection established between the client and the server, some log data may not be uploaded to the server during the period when the long connection is closed; if the client's log data is stored in a log file before uploading, the upload of the log file may affect the communication quality of the client's multimedia communication data transmission.

[0044] To ensure timely and complete uploading of log data generated by the client during multimedia communication data transmission to the server without affecting the communication quality of the client's multimedia communication data, this disclosure provides a log data processing method and related equipment. After successfully establishing a network connection (such as a long-lived connection) between the client and the server, the log data generated by the client during multimedia communication data transmission is promptly uploaded to the server via the network connection. When the network connection is lost, the log data that was not successfully uploaded is stored in a local log file. This allows the local log file to be uploaded to the server only when the network connection is successfully re-established, thus avoiding the problem of some log data not being successfully uploaded due to network connection drops. Furthermore, determining the file size of the local log file based on communication quality requirements ensures that the uploading of the local log file does not affect the communication quality of the multimedia communication data.

[0045] To better understand the log data processing method and related equipment provided in the embodiments of this disclosure, the application environment of the embodiments of this disclosure will be described below.

[0046] Figure 1 This diagram illustrates an exemplary application system architecture to which the log data processing method described in this disclosure can be applied, such as... Figure 1 As shown, the system architecture includes: client 101, network 102, multimedia server 103, and log server 104.

[0047] The medium providing communication links between client 101 and multimedia server 103, and between client 101 and log server 104, can be a wired network or a wireless network. Optionally, the wireless or wired network here uses standard communication technologies and / or protocols. The network is typically the Internet, but can also be any network, including but not limited to a Local Area Network (LAN), Metropolitan Area Network (MAN), Wide Area Network (WAN), mobile, wired or wireless network, private network or virtual private network, and any combination thereof. In some embodiments, technologies and / or formats including Hyper Text Markup Language (HTML), Extensible Markup Language (XML), etc., are used to represent data exchanged over the network. Furthermore, conventional encryption technologies such as Secure Socket Layer (SSL), Transport Layer Security (TLS), Virtual Private Network (VPN), and Internet Protocol Security (IPSec) can be used to encrypt all or some of the links. In other embodiments, customized and / or dedicated data communication technologies may be used to replace or supplement the aforementioned data communication technologies.

[0048] In this embodiment of the disclosure, the client 101 can be any type of terminal device, including but not limited to: smartphones, tablets, laptops, desktop computers, smart speakers, smartwatches, wearable devices, augmented reality devices, virtual reality devices, etc.

[0049] In this embodiment of the disclosure, the multimedia server 103 refers to a server that provides multimedia services; the log server 104 refers to a server that provides log analysis services. Both the multimedia server and the log server can be independent physical servers, server clusters or distributed systems composed of multiple physical servers, or cloud servers that provide basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms.

[0050] In some embodiments, Figure 1The multimedia server 103 shown can be a server used to provide real-time multimedia communication services (such as audio / video conferencing, live streaming, etc.); and Figure 1 The client 101 shown has a client installed on it that provides local multimedia communication services corresponding to the multimedia server 103. This client can be an application client or a web-based client.

[0051] Those skilled in the art will know that Figure 1 The number of client 101, network 102, multimedia server 103, and log server 104 is merely illustrative; any number of clients, networks, multimedia servers, and log servers can be used as needed. This disclosure does not limit this.

[0052] Figure 2 This diagram illustrates a flowchart of a log data processing method applied to the client side in an embodiment of this disclosure. In principle, Figure 2 The method shown can be executed by any electronic device with computing power. In some embodiments, Figure 2 The log data processing method shown can be executed by the client 101 of the above system architecture; in other embodiments, Figure 2 The log data processing method shown can be implemented by the client 101, multimedia server 103, and log server 104 in the above system architecture through interaction.

[0053] like Figure 2 As shown, the log data processing method applied to the client side provided in this embodiment includes the following steps:

[0054] S202, transmit multimedia communication data with the multimedia server through the first long connection, and obtain the network status information of the first long connection and the local log data of the client.

[0055] It should be noted that the multimedia server in this embodiment can be any type of server that provides multimedia communication services; the client in this embodiment can be a client corresponding to the multimedia server for providing local multimedia services. The client can be a native application client that directly accesses the server (such as Tencent Video Conferencing software client), a mini-program client embedded in other applications (such as WeChat, Alipay, etc.), or a web application client that accesses the server through a webpage (such as Baidu Browser, Google Browser, etc.).

[0056] In this embodiment of the disclosure, the aforementioned multimedia communication data may be communication data transmitted between the client and the multimedia server when a user uses various multimedia communication services provided by the multimedia server through a client. In some embodiments, the multimedia data communication data in this embodiment of the disclosure may be real-time or streaming multimedia communication data transmitted through a long connection, such as communication data from multimedia services like online audio / video conferencing and live video streaming.

[0057] In this embodiment of the disclosure, a long-lived connection refers to a network connection established between a client and a server that maintains a connection state for a relatively long period of time (such as the period during which the client's token information has not expired), suitable for real-time or streaming multimedia communication data transmission scenarios. The aforementioned first long-lived connection refers to a long-lived connection created between the client and the multimedia server, used for transmitting multimedia communication data between the client and the multimedia server.

[0058] For example, the network status data in S202 above can be any type of data that reflects the network status when the first long connection transmits multimedia communication data, including but not limited to network speed, bandwidth, etc. The local log data in S202 above can be any type of log data generated by the client during multimedia communication data transmission, including but not limited to log data used to record user behavior data and / or application running data. In some embodiments, it can be event log data collected through event tracking code embedded in the multimedia client application system.

[0059] S204 encapsulates network status information and local log data to obtain multimedia log data, which carries associated information about multimedia communication data.

[0060] It should be noted that, to facilitate monitoring of the client's multimedia communication data transmission via the first long connection, the client needs to upload its local log data generated during the multimedia communication data transmission process to the log server. If local log data is transmitted via the long connection used for multimedia communication data transmission, on the one hand, the uploading of local log data may affect the transmission quality of the multimedia communication data; on the other hand, when the long connection is disconnected and reconnected due to factors such as network environment or device performance, the local log data during the disconnection period may not be uploaded to the log server, resulting in missing log data. The log data processing method provided in this embodiment transmits the network status information of the first long connection and the local log data generated by the client through a second long connection, enabling the client to upload the log data generated during the multimedia communication data transmission process to the log server without affecting the quality of multimedia communication data transmission.

[0061] Considering that multimedia communication data and multimedia log data are transmitted through different long connections, after collecting the network status information of the first long connection and the local log data of the client, it is necessary to encapsulate the network status information of the first long connection and the local log data of the client so that the encapsulated multimedia log data carries the correlation information of multimedia communication data, thereby realizing the correlation analysis of multimedia log data and multimedia communication data.

[0062] In practical implementation, the encapsulation of network status information and local log data can be performed in real time, according to a preset period, or triggered by abnormal network status and / or abnormal multimedia communication data transmission. This disclosure does not impose specific limitations in this regard.

[0063] S206, transmit multimedia log data to the log server via a second long connection.

[0064] It should be noted that, in this embodiment, the second long connection refers to a long connection created between the client and the log server, used by the client to upload multimedia log data to the log server. In specific implementations, the second long connection and the first long connection can use the same communication protocol or different communication protocols. The expiration times of the token information corresponding to the second long connection and the first long connection can be the same or different. To ensure that all network status information of the first long connection and local log data generated by the client during the transmission of multimedia communication data in the first long connection are uploaded to the log server, the expiration time of the token information corresponding to the second long connection can be configured to be longer than the expiration time of the token information corresponding to the first long connection, thereby making the time period during which the second long connection maintains its connection state longer than the time period during which the first long connection maintains its connection state.

[0065] S208, in response to the disconnection of the second long connection, stores multimedia log data to one or more local log files on the client.

[0066] It should be noted that, in this embodiment, the local log file refers to a file created locally on the client to store log data that failed to be transmitted to the log server due to the disconnection of the second long connection. In this embodiment, both the first and second long connections reside on the same client; therefore, if the local log file transmitted over the second long connection is too large, it may affect the transmission quality of multimedia communication data over the first long connection.

[0067] In this embodiment of the disclosure, local log data is stored in one or more local log files. By limiting the file size of the local log files, it is possible to prevent the local log files transmitted by the second long connection from becoming too large and affecting the transmission quality of multimedia communication data transmitted by the first long connection.

[0068] In practice, the file size threshold of the local log file can be pre-configured, or the file size threshold of the local log file can be adaptively adjusted according to network status information and / or multimedia communication quality requirements.

[0069] It should be noted that the local log file in this embodiment of the disclosure can be a log file on the client's local machine or a log file on another local device connected to the client.

[0070] S210, in response to the reconnection of the second long connection, upload one or more local log files to the log server through the reconnected second long connection.

[0071] Furthermore, considering that the second long connection for transmitting log data may also be disconnected and reconnected due to factors such as network environment or device performance, the log data processing method provided in this embodiment stores multimedia log data in the client's local log file when the second long connection is detected to be disconnected. After the second long connection is reconnected, the client's local log file is then uploaded to the log server, which can ensure that all multimedia log data on the client is uploaded to the log server.

[0072] For example, when uploading local log files, the client can upload them one by one, upload multiple local log files at a time, or upload all local log files to the log server at once.

[0073] As can be seen from the above, the log data processing method provided in this embodiment obtains the network status information of the first long connection and the client's local log data during the process of the client transmitting multimedia communication data with the multimedia server through the first long connection. The network status information of the first long connection and the client's local log data are encapsulated to obtain multimedia log data carrying multimedia communication data association information. This data is then transmitted to the log data server through the second long connection. Since the multimedia log data and multimedia communication data are transmitted through different long connections, the disconnection of the long connection transmitting the multimedia communication data will not affect the transmission of the multimedia log data. Furthermore, the multimedia log data that could not be transmitted after the second long connection was disconnected is stored in the client's local log file. After the second long connection is reconnected, the local log file is uploaded to the log server, ensuring that all multimedia log data is uploaded to the log server without omission.

[0074] The log data processing method provided in this disclosure can timely and completely upload the network status information and local log data of the client during the transmission of multimedia communication data through a long connection to the log server, so that the log server can monitor the client's multimedia communication process based on the received data.

[0075] In one embodiment, when the multimedia communication data transmitted by the client is real-time or streaming multimedia communication data based on a web application, the first long-lived connection between the client and the multimedia server in this embodiment can be a WebSocket connection, and the second long-lived connection between the client and the log server can also be a WebSocket connection. WebSocket connections support full-duplex communication between the client and the server, and once established, the connection can be maintained until either the client or the server closes the connection, reducing the overhead of frequently establishing and closing connections.

[0076] In some embodiments, when a client transmits multimedia communication data to a multimedia server via a first long connection, it can use a preset multimedia communication data packet encapsulation method to encapsulate the multimedia communication data, obtaining one or more multimedia communication data packets, and send them to the multimedia server via the first long connection. Each multimedia communication data packet contains an encapsulation sequence number and timestamp information. During the transmission of multiple multimedia communication data packets via the first long connection, [the following can be done / contained]: Figure 3 The process shown encapsulates network status information and local log data to obtain encapsulated multimedia log data, such as... Figure 3 As shown, it specifically includes:

[0077] S302, obtain network status information and timestamp information of local log data;

[0078] S304. Based on the network status information and the timestamp information of the local log data, determine the multimedia communication data packet from the multimedia communication data and obtain the encapsulation sequence number of the multimedia communication data packet.

[0079] S306 encapsulates network status information, local log data, and the encapsulation sequence number of multimedia communication data packets, and carries the encapsulation sequence number of the multimedia communication data packets with the encapsulated multimedia log data.

[0080] It should be noted that the collection of network status information and / or local log data has corresponding timestamp information; the transmission of multimedia communication packets also has corresponding timestamp information. The encapsulation sequence number in the multimedia data packet is used to identify each multimedia communication data packet. Therefore, when encapsulating network status information and local log data, the encapsulation sequence number of the corresponding multimedia communication data packet can be obtained based on the timestamp information of the network status information and local log data. The network status information, local log data, and the encapsulation sequence number of the corresponding multimedia communication data packet are then encapsulated together to obtain multimedia log data, so that the log server can quickly match the corresponding multimedia communication data packet based on the encapsulation sequence number contained in the multimedia log data.

[0081] For example, when a client transmits multimedia data packet 1 (timestamp 1), multimedia data packet 2 (timestamp 2), multimedia data packet 3 (timestamp 3), multimedia data packet 4 (timestamp 4), and multimedia data packet 5 (timestamp 5) through a first long connection, assuming the multimedia log data to be encapsulated consists of the network status information of the long connection within the first time period and the local log data generated by the client within the first time period, if the first time period includes timestamp 1, timestamp 2, and timestamp 3, then the encapsulation sequence numbers of multimedia data packets, multimedia data packets 2, and multimedia data packets 3 can be encapsulated together with the network status information of the long connection within the first time period and the local log data generated by the client within the first time period to form the first multimedia log data packet.

[0082] It should be noted that in the embodiments of this disclosure, one multimedia log data packet may correspond to one or more multimedia communication data packets. In specific implementation, this can be adjusted according to the actual situation, and this disclosure does not impose specific limits on this.

[0083] In this embodiment of the disclosure, the file size threshold of the local log file can be a pre-configured threshold, which can be a user-defined threshold (such as 100K), or a threshold that is dynamically updated based on the bandwidth requirements of multimedia communication data transmission and / or the network status information of the first long connection.

[0084] Figure 4 This invention discloses a flowchart illustrating a method for determining a file size threshold for a local log file according to an embodiment of the present disclosure. Figure 4 As shown in the embodiments of this disclosure, the log data processing method can determine the file size threshold of the local log file through the following steps:

[0085] S402, Based on the transmission bandwidth requirement information of the first long connection, configure the file size threshold of the local log file, wherein the file size threshold is negatively correlated with the transmission bandwidth requirement information of the first long connection.

[0086] It should be noted that the aforementioned transmission bandwidth requirement information is used to characterize the expected transmission bandwidth (related to multimedia communication quality) when the client transmits multimedia communication data through the first long connection. In specific implementations, the transmission bandwidth requirement information of the first long connection can be obtained, and then the file size threshold of the local log file can be configured based on the transmission bandwidth requirement information of the first long connection. In some embodiments, the transmission bandwidth requirement information in this disclosure includes, but is not limited to, any one or more of the following: the data type, quantity, and bandwidth occupied (the amount of data transmitted per unit time) of the multimedia communication data. The larger the local log file, the larger the transmission bandwidth of the second long connection; when the client's transmission bandwidth is fixed, the transmission bandwidth of the first long connection will be smaller. Therefore, the file size threshold of the local log file can be determined based on the transmission bandwidth requirement information of the first long connection.

[0087] For example, assuming the client's total transmission bandwidth is 1M; if the transmission bandwidth requirement of the first long connection is 900K, then the file size threshold for the local log file can be configured to 100K. If the transmission bandwidth requirement of the first long connection is 800K, then the file size threshold for the local log file can be configured to 200K.

[0088] For example, in an online video conference, when the multimedia communication data transmitted by the client is video data, since the transmission of video data consumes a lot of bandwidth, a smaller file size threshold (such as 100K) can be configured to avoid the upload of local log files affecting the transmission quality of video data; while when the multimedia communication data transmitted by the client is audio data, since the transmission of audio data consumes less bandwidth, a larger file size threshold (such as 200K) can be configured.

[0089] Furthermore, considering that the network state of the first long connection is constantly changing, in some embodiments, after executing S402, the present disclosure embodiment may also update the file size threshold of the local log file through the following steps:

[0090] S404, based on the network status information of the first long connection, update the file size threshold, wherein the network status information includes at least: network transmission bandwidth, and the file size threshold is positively correlated with the network transmission bandwidth.

[0091] It should be noted that the above network status information is used to characterize the network status of the client when transmitting multimedia communication data through the first long connection, including but not limited to any one or more of the following: network bandwidth, network transmission rate, etc.

[0092] In this embodiment, the file size threshold of the local log file is determined based on the bandwidth requirements of the client for transmitting multimedia communication data, which can meet the transmission needs of multimedia communication data under different scenarios. Updating the file size threshold based on network status information enables adaptive adjustment of the file threshold.

[0093] Figure 5 This invention discloses a flowchart illustrating a method for reconnecting a long-lived connection according to an embodiment of the present disclosure. Figure 5 As shown, the log data processing method provided in this embodiment can also request a reconnection of the network connection through the following steps:

[0094] S502, according to the preset token verification time interval, sends a token verification request to the log server, wherein the token verification request carries the client's token information;

[0095] S504, Receive the token verification result returned by the log server based on the token verification request;

[0096] S506: If the token verification result indicates that the client's token information has not exceeded the token expiration time, a reconnection request is sent to the log server according to the preset reconnection time interval, wherein the reconnection time interval is less than the token verification time interval.

[0097] It should be noted that the token information in this embodiment is used by the server (log server or multimedia server) to verify the client's identity. When the network connection between the client and the server is a long-lived connection, the expiration time of the token information is usually set to a relatively long duration. If the token information is verified every time the network is disconnected and reconnected, it will lead to unnecessary network resource overhead. Therefore, in this embodiment, the preset reconnection time interval for network reconnection requests is configured to be shorter than the preset verification time interval for token information verification, which can reduce the network resource overhead caused by frequent token information verification. In one embodiment, the verification time interval for token information (i.e., the preset verification time interval) can be configured to be 10 minutes; while the reconnection time interval for initiating a network reconnection request (i.e., the preset reconnection time interval) is 2 seconds.

[0098] In some embodiments, such as Figure 5 As shown, after receiving the token verification result returned by the server based on the token verification request, the log data processing method provided in this embodiment can also upload the local log file through the following steps:

[0099] S508: If the token verification result indicates that the client's token information has exceeded the token expiration time, close the second long connection.

[0100] It should be noted here that, Figure 5The steps for reconnecting a long connection request shown can be applied to reconnecting the first long connection between the client and the log server, as well as to reconnecting the first long connection between the client and the multimedia server.

[0101] In some embodiments, such as Figure 6 As shown, after closing the second long connection, the log data processing method provided in this embodiment can also upload local log files through the following steps:

[0102] S602, if there are unuploaded local log files on the client, generate a log upload failure message. The log upload failure message is used to inform the client that there is log data that failed to be uploaded.

[0103] S604, in response to a user's log upload operation based on a log upload failure message, uploads the local log file stored on the client to the log server via other communication methods.

[0104] It should be noted that in this embodiment, both the client's local log data and local log files are uploaded to the log server via a second long connection. If the client's token expires, the second long connection between the client and the log server will close. If the second connection between the client and the log server is broken shortly before the token expires, some unuploaded local log data may exist on the client. To avoid the loss of this log data, this embodiment, in response to the re-establishment of the long connection between the client and the log server, uploads the locally stored local log files to the log server via the newly established long connection if unuploaded local log files exist on the client. In specific implementation, each time the client and the log server establish a second long connection, it automatically checks whether the client has locally stored local log files. If so, it uploads the local log files, thus avoiding the log data loss problem caused by the closure of the second long connection.

[0105] In some embodiments, other communication methods may include uploading via SMS, email, or other communication methods, or via a newly established persistent connection. This disclosure does not specifically limit the method.

[0106] In some embodiments, the client's local log files can be stored in a local log folder created locally on the client. In this embodiment, such as... Figure 7 As shown, the log data processing method provided in this embodiment can upload the client's local log file to the server through the following steps:

[0107] S702, responding to the reconnection of the second long connection, periodically traverses the local log folder;

[0108] S704, When there are multiple unuploaded local log files in the local log folder, sort the multiple local log files according to the generation time of each local log file;

[0109] S706, according to the sorting result, uploads the log files that have not been uploaded in the local log folder to the log server in sequence through the second long connection that has been reconnected;

[0110] S708, delete the successfully uploaded local log files in the local log folder.

[0111] In the above embodiments, the local log files storing the client's local log data are all placed in a local log folder on the client. By periodically traversing the folder, the local log files in the folder can be uploaded to the log server one by one. After the local log files are successfully uploaded to the server, the successfully uploaded local log files are promptly deleted from the local log folder, which can avoid the local log files occupying the client's storage space.

[0112] In some embodiments, the client can monitor whether it receives a response message from the log server via a second long connection after each local log file upload. Only after confirming the successful upload of the previous local log file will the client upload the next one. This method avoids the accidental deletion of local log files that were not successfully uploaded.

[0113] Based on the same inventive concept, this disclosure also provides a... Figure 8 The log data processing method shown, applied to the server side, is in principle... Figure 8 The method shown can be executed by any electronic device with computing power. In some embodiments, Figure 8 The log data processing method shown can be executed by the log server 104 of the above system architecture; in other embodiments, Figure 8 The log data processing method shown can be implemented by the log server 104 and client 101 in the above system architecture through interaction.

[0114] like Figure 8 As shown in the embodiments of this disclosure, the log data processing method applied to the server side includes the following steps:

[0115] S802, receive multimedia log data sent by the client through the second long connection, wherein the multimedia log data is obtained by the client encapsulating the network status information of the first long connection and the client's local log data, the first long connection is used for the client to transmit multimedia communication data with the multimedia server, and the multimedia log data carries the association information of the multimedia communication data;

[0116] S804 receives a reconnection request from the client and reconnects to the second long connection if the client's token information has not expired.

[0117] S806, in response to the reconnection of the second long connection, receives one or more local log files uploaded by the client through the reconnected second long connection, wherein the one or more local log files store multimedia log data generated by the client during the disconnection of the second long connection, and the file size of each local log file does not exceed a preset file size threshold.

[0118] In one embodiment of this disclosure, the associated information of the multimedia communication data is the encapsulation sequence number generated when the multimedia communication data is encapsulated into a multimedia communication data packet; in this embodiment, such as Figure 9 As shown, the log data processing method provided in this embodiment may further include the following steps:

[0119] S902, decapsulate the multimedia log data to obtain the encapsulation sequence number of the multimedia communication data packet, the network status information of the first long connection, and the client's local log data;

[0120] S904: Based on the encapsulation sequence number of the decapsulated multimedia communication data packet, associate the network status information of the first long connection and the client's local log data with the corresponding multimedia communication data packet.

[0121] In practical implementation, when the log server receives multimedia log data uploaded by the client through the second long connection, it can decapsulate the multimedia log data to obtain the encapsulation sequence number of the multimedia communication data packet, the network status information of the first long connection, and the client's local log data. The encapsulation sequence number of the multimedia communication data packet can be used to associate the network status information of the first long connection and the client's local log data with the multimedia communication data packet transmitted through the first long connection.

[0122] In some embodiments, the client is further configured to: encapsulate multimedia communication data using a preset multimedia communication data packet encapsulation method to obtain one or more encapsulated multimedia communication data packets, and send them to the multimedia server through a first long connection to obtain network status information of the first long connection and local log data of the client, wherein each multimedia communication data packet contains: encapsulation sequence number and timestamp information.

[0123] In some embodiments, the client is further configured to encapsulate network status information and local log data to obtain multimedia log data through the following steps: obtaining timestamp information of network status information and local log data; determining multimedia communication data packets from multimedia communication data based on the timestamp information of network status information and local log data, and obtaining the encapsulation sequence number of the multimedia communication data packets; encapsulating network status information, local log data, and the encapsulation sequence number of multimedia communication data packets, and carrying the encapsulation sequence number of the multimedia communication data packets in the encapsulated multimedia log data.

[0124] In some embodiments, the client is further configured to determine the file size threshold of the local log file by the following steps: configuring the file size threshold of the local log file according to the transmission bandwidth requirement information of the first long connection, wherein the size of the file size threshold is negatively correlated with the transmission bandwidth requirement information of the first long connection; updating the file size threshold according to the network status information of the first long connection, wherein the network status information includes at least: network transmission bandwidth, and the size of the file size threshold is positively correlated with the size of the network transmission bandwidth.

[0125] In some embodiments, such as Figure 10 As shown, the log data processing method provided in this embodiment can also verify token information through the following steps:

[0126] S1002, Receive a token verification request sent by the client according to a preset verification time interval, wherein the token verification request carries the client's token information;

[0127] S1004, Based on the token verification request, verify whether the client's token information has exceeded the token expiration time;

[0128] S1006, the client returns a token verification result to the client. If the token verification result indicates that the client's token information has not exceeded the token expiration time, the client further sends a reconnection request to the log server at a preset reconnection time interval, where the reconnection time interval is less than the token verification time interval. The reconnection request is used to request the establishment of a second long-lived connection between the client and the log server.

[0129] In some embodiments, such as Figure 11As shown in the embodiments of this disclosure, the log data processing method can also receive local log files uploaded by the client through the following steps:

[0130] S1102, If the token verification result indicates that the client's token information has exceeded the token expiration time, close the second long connection;

[0131] S1106, Receive local log files uploaded by the client through other communication methods, wherein the client is configured to: generate a log upload failure message when the second long connection is closed and there are unuploaded local log files on the client's local machine, wherein the log upload failure message is used to indicate to the client that there is log data that failed to be uploaded; and in response to the log upload operation performed by the user based on the log upload failure message, upload the local log files stored on the client's local machine to the log server through other communication methods.

[0132] In some embodiments, the client's local log files are stored in a local log folder created locally on the client. The client is further configured to: periodically traverse the local log folder in response to the reconnection of the second long connection; when multiple unuploaded local log files exist in the local log folder, sort the multiple local log files according to their generation time, and according to the sorting result, upload the unuploaded log files in the local log folder to the log server sequentially via the reconnected second long connection, and delete the successfully uploaded local log files in the local log folder.

[0133] The following example illustrates the log data processing method provided in this embodiment of the disclosure by taking the client uploading event tracking data to the server via a long connection as an example:

[0134] Figure 12 This diagram illustrates a flowchart of a client uploading event log data via a long connection in an embodiment of this disclosure. Figure 12 As shown, it specifically includes:

[0135] S1202, Establish a long connection.

[0136] In practice, the client obtains the server's address information (such as domain name address information) to establish a long-lived connection with the server.

[0137] S1204: The client uploads the data logging data to the server in real time via a long connection.

[0138] S1206, the client stores the failed data upload event logs into the event log file.

[0139] S1208, the client periodically checks the event log files.

[0140] In practice, the event log files that store event log data can be placed in a folder, and the folder can be traversed every 20 seconds to check for any unuploaded event log files.

[0141] S1210: The client uploads the data tracking log files to the server via a long connection.

[0142] S1212, the client deletes the uploaded event log files.

[0143] S1214, Send token verification request.

[0144] In practice, during network connection reconnection, a token verification request can be sent every preset verification time interval (e.g., 10 minutes). When the long-lived connection between the client and server is a WebSocket connection, the client can verify the token information by sending an HTTP request. If the token information has expired, a pre-defined error code is returned.

[0145] S1216, the client requests a network connection reconnection.

[0146] In practice, a network connection reconnection request can be sent every preset reconnection time interval (e.g., 2 seconds).

[0147] S1218, Close persistent connections.

[0148] In practice, to avoid some event log data not being uploaded to the server after the long connection is closed, the client can check whether the event log file exists locally when the client establishes the long connection with the server again. If it exists, the unuploaded event log file can be uploaded.

[0149] Taking the client's local log data as the example of the event tracking log data for the WebRTC project (WebRTC real-time multimedia communication data transmission), Figure 10 This diagram illustrates a flowchart of a client uploading WebRTC project data logging data via a WebSocket connection, as shown in this embodiment of the disclosure. Figure 13 As shown, it specifically includes:

[0150] S1302, WebRTC project initialization.

[0151] S1304, The client establishes a long-lived connection with the log server.

[0152] S1306, Connection successful.

[0153] S1308 transmits embedded log data in real time via a long connection.

[0154] S1310 records the event tracking data to a local log file.

[0155] S1312 If the data of the event tracking log exceeds the file size threshold of the local log file, it will be recorded in a new local log file.

[0156] S1314, Upload local log files via a long connection.

[0157] S1316, Check if the client has any unuploaded local log files.

[0158] S1318, the long connection was disconnected due to network issues or expired token information.

[0159] S1320, persistent connection failed.

[0160] S1322, Verify token information.

[0161] S1324, Request to reconnect (reconnection is requested every 2 seconds).

[0162] S1326, reconnection failed.

[0163] S1328, Check if token verification has exceeded 13 minutes.

[0164] S1330, Join / create a room for video calls.

[0165] S1332, Exit / destroy the room used for video calls.

[0166] S1334, WebRTC project deinitialization.

[0167] S1336, the long-lived connection between the client and the log server is broken.

[0168] WebRTC projects need to support users reconnecting to the call in environments with weak networks, network jitter, or network switching. However, the WebRTC reconnection process is complex and prone to errors, so uploading log data is crucial. To prevent log data from failing to be uploaded to the server during reconnection, this embodiment adds local log storage. Each local log file is no larger than 100KB. After the network connection is established, the local log folder is traversed, and the event tracking log files are checked every 20 seconds. Data from one event tracking log file is retrieved and uploaded each time. After the upload is completed, the corresponding event tracking log file is deleted. This process is continued until all event tracking log files in the folder have been traversed and uploaded. Event tracking log files that fail to upload are not deleted.

[0169] Applying the log data processing method provided in this embodiment to a WebRTC project can achieve, but is not limited to, the following technical effects: ① Preventing the upload of local log data from affecting the communication quality of the WebRTC project (multimedia data transmission). ② Preventing the loss of some local log data on the client due to network connection disconnection and reconnection. ③ Using WebSocket to upload local log data in real time, enabling timely analysis of local log data on the client. ④ Timely storing failed local log data in the client's local log file, and periodically checking and uploading it, ensuring that all local log data on the client is uploaded to the server without omission. ⑤ Before saving local log data to the local log file, checking the file size of the local log file to ensure that the size of each local log file does not exceed a preset file size threshold (e.g., 100K), which can reduce the network pressure caused by the upload of local log files and reduce the impact on the quality of multimedia communication data (e.g., audio / video calls). ⑥ Uploading locally stored log files via WebSocket requires no additional overhead.

[0170] Based on the same inventive concept, this disclosure also provides a client, as described in the following embodiments. Since the principle by which this client embodiment solves the problem is similar to that of the method embodiments described above, the implementation of this client embodiment can refer to the implementation of the method embodiments described above, and repeated details will not be elaborated further.

[0171] Figure 14 This illustration shows a schematic diagram of the internal components of a client according to an embodiment of the present disclosure, such as... Figure 14 As shown, the client includes: a first long-connection data transmission module 141, a data processing module 142, a second long-connection data transmission module 143, a log file local storage module 144, and a log file upload module 145.

[0172] The system includes a first long-connection data transmission module 141, used to transmit multimedia communication data with the multimedia server through the first long connection and to obtain network status information of the first long connection and local log data of the client; a data processing module 142, used to encapsulate the network status information and local log data to obtain multimedia log data, wherein the multimedia log data carries the association information of the multimedia communication data; a second long-connection data transmission module 143, used to transmit multimedia log data to the log server through the second long connection; a log file local storage module 144, used to store multimedia log data in one or more local log files of the client in response to the disconnection of the second long connection; and a log file upload module 145, used to upload one or more local log files to the log server through the reconnected second long connection in response to the reconnection of the second long connection.

[0173] In some embodiments, the first long-connection data transmission module 141 is further configured to: encapsulate multimedia communication data using a preset multimedia communication data packet encapsulation method to obtain one or more encapsulated multimedia communication data packets, and send them to the multimedia server through the first long connection; obtain network status information of the first long connection and local log data of the client; wherein each multimedia communication data packet contains: an encapsulation sequence number and timestamp information; the data processing module is further configured to: obtain the timestamp information of the network status information and the local log data; determine the multimedia communication data packet from the multimedia communication data according to the timestamp information of the network status information and the local log data, and obtain the encapsulation sequence number of the multimedia communication data packet; encapsulate the network status information, the local log data, and the encapsulation sequence number of the multimedia communication data packet, and carry the encapsulation sequence number of the multimedia communication data packet in the encapsulated multimedia log data.

[0174] In some embodiments, the log file local storage module 144 is further configured to: configure a file size threshold for the local log file based on the transmission bandwidth requirement information of the first long connection, wherein the size of the file size threshold is negatively correlated with the transmission bandwidth requirement information of the first long connection.

[0175] In some embodiments, the log file local storage module 144 is further configured to: update the file size threshold according to the network status information of the first long connection, wherein the network status information includes at least the network transmission bandwidth, and the file size threshold is positively correlated with the network transmission bandwidth.

[0176] In some embodiments, the client provided in this disclosure further includes: a first network connection module 146, configured to: send a token verification request to a log server according to a preset token verification time interval, wherein the token verification request carries the client's token information; receive a token verification result returned by the log server based on the token verification request; and, if the token verification result indicates that the client's token information has not exceeded the token expiration time, send a reconnection request to the log server according to a preset reconnection time interval, wherein the reconnection time interval is less than the token verification time interval.

[0177] In some embodiments, the first network connection module 146 is further configured to: close the second long connection if the token verification result indicates that the client's token information has exceeded the token expiration time.

[0178] In some embodiments, the log file upload module 145 is further configured to: check whether a local log file is stored locally on the client; if a local log file exists locally on the client, generate a log upload failure message, wherein the log upload failure message is used to indicate to the client that there is log data that failed to be uploaded; and in response to a log upload operation performed by the user based on the log upload failure message, upload the local log file stored locally on the client to the log server through other communication methods.

[0179] In some embodiments, the client's local log files are stored in a local log folder created locally on the client. The log file upload module 145 is further configured to: periodically traverse the local log folder in response to the reconnection of the second long connection; when there are multiple unuploaded local log files in the local log folder, sort the multiple local log files according to the generation time of each local log file, and upload the unuploaded log files in the local log folder to the log server in sequence through the reconnected second long connection according to the sorting result, and delete the successfully uploaded local log files in the local log folder.

[0180] In some embodiments, when the multimedia communication data transmitted by the client is web-based multimedia communication data, the long-lived connection between the client and the multimedia server is a WebSocket connection. Optionally, the long-lived connection between the client and the log server can also be a WebSocket connection.

[0181] It should be noted that the examples and application scenarios implemented by the modules in the above client embodiments and the corresponding steps in the method embodiments are the same, but are not limited to the content disclosed in the above method embodiments. It should also be noted that the above modules, as part of the client, can be executed in a computer system such as a set of computer-executable instructions.

[0182] Based on the same inventive concept, this disclosure also provides a log server, as described in the following embodiments. Since the principle by which this log server embodiment solves the problem is similar to that of the above method embodiments, the implementation of this log server embodiment can refer to the implementation of the above method embodiments, and repeated details will not be elaborated further.

[0183] Figure 15 This diagram illustrates the internal components of a log server according to an embodiment of the present disclosure, such as... Figure 15 As shown, the log server includes: a log data receiving module 151, a second network connection module 152, and a log file receiving module 153.

[0184] The log data receiving module 151 is used to receive multimedia log data sent by the client through a second long connection. The multimedia log data is obtained by the client encapsulating the network status information of the first long connection and the client's local log data. The first long connection is used for the client to transmit multimedia communication data with the multimedia server, and the multimedia log data carries the association information of the multimedia communication data. The second network connection module 152 is used to receive a reconnection request sent by the client and reconnect the second long connection if the client's token information has not exceeded the token expiration time. The log file receiving module 153 is used to respond to the reconnection of the second long connection and receive one or more local log files uploaded by the client through the reconnected second long connection. The one or more local log files store the multimedia log data generated by the client during the disconnection of the second long connection, and the file size of each local log file does not exceed a preset file size threshold.

[0185] In one embodiment of this disclosure, the associated information of the multimedia communication data is the encapsulation sequence number generated when the multimedia communication data is encapsulated into a multimedia communication data packet; in this embodiment, the log server provided in this disclosure further includes: a log data analysis module 154, used to: decapsulate the multimedia log data to obtain the encapsulation sequence number of the multimedia communication data packet, the network status information of the first long connection, and the local log data of the client; and associate the network status information of the first long connection and the local log data of the client with the corresponding multimedia communication data packet according to the encapsulation sequence number of the decapsulated multimedia communication data packet.

[0186] In some embodiments, the log server provided in this disclosure further includes a token verification module 155, configured to: receive a token verification request sent by a client according to a preset verification time interval, wherein the token verification request carries the client's token information; verify whether the client's token information has exceeded the token expiration time according to the token verification request; and return a token verification result to the client, wherein if the token verification result indicates that the client's token information has not exceeded the token expiration time, the client is further configured to send a reconnection request to the log server according to a preset reconnection time interval, wherein the reconnection time interval is less than the token verification time interval. The reconnection request is used to request the establishment of a second long-lived connection between the client and the log server.

[0187] In some embodiments, the second network connection module 152 is further configured to: close the second long connection if the token verification result indicates that the client's token information has exceeded the token expiration time; the log file receiving module 153 is further configured to: receive the local log file uploaded by the client through other communication methods, wherein the client is configured to: check whether the client has a local log file stored locally after closing the second long connection; generate a log upload failure prompt message if the client has a local log file, wherein the log upload failure prompt message is used to indicate to the client that there is log data that failed to be uploaded; and upload the local log file stored locally by the client to the log server through other communication methods in response to the log upload operation performed by the user based on the log upload failure prompt message.

[0188] It should be noted that the examples and application scenarios implemented by the modules in the above server embodiments and the corresponding steps in the method embodiments are the same, but are not limited to the content disclosed in the above method embodiments. It should also be noted that the above modules, as part of the server, can be executed in a computer system such as a set of computer-executable instructions.

[0189] Those skilled in the art will understand that various aspects of this disclosure can be implemented in the following forms: a completely hardware implementation, a completely software implementation (including firmware, microcode, etc.), or a combination of hardware and software implementations, which can be collectively referred to herein as a "circuit", "module" or "system".

[0190] Based on the same inventive concept, this disclosure also provides an electronic device, which includes: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute the log data processing method described above by executing the executable instructions. Since the principle by which this electronic device solves the problem is similar to that of the above method embodiments, the implementation of this electronic device embodiment can refer to the implementation of the above method embodiments, and repeated details will not be described again.

[0191] The following reference Figure 16 To describe an electronic device 1600 according to such an embodiment of the present disclosure. Figure 16 The electronic device 1600 shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments disclosed herein.

[0192] like Figure 16 As shown, the electronic device 1600 is manifested in the form of a general-purpose computing device. The components of the electronic device 1600 may include, but are not limited to: at least one processing unit 1610, at least one storage unit 1620, and a bus 1630 connecting different system components (including storage unit 1620 and processing unit 1610).

[0193] The storage unit stores program code that can be executed by the processing unit 1610, causing the processing unit 1610 to perform the steps described in the "Exemplary Methods" section above according to various exemplary embodiments of this disclosure.

[0194] In some embodiments, when the electronic device 1600 is a client-side device, the processing unit 1610 may perform the following steps of the above method embodiment: in response to a successful network connection between the client and the server, uploading log data to the server via the network connection, wherein the log data is generated by the client during multimedia communication data transmission; in response to a network connection failure, storing the log data that the client failed to upload into the client's local log file, wherein the file size of the local log file is related to the communication quality requirements information of the multimedia communication data; in response to a successful reconnection of the network connection, uploading the local log file to the server via the successfully reconnected network connection.

[0195] In some embodiments, when the electronic device 1600 is a server-side device, the processing unit 1610 may perform the following steps of the above method embodiment: in response to a successful network connection between the server and the client, receiving log data uploaded by the client through the network connection, wherein the log data is generated by the client during multimedia communication data transmission; in response to a successful reconnection of the network connection, receiving a local log file uploaded by the client through the successfully reconnected network connection, wherein the local log file stores log data that the client failed to upload, and the file size of the local log file is related to the communication quality requirements information of the multimedia communication data.

[0196] Storage unit 1620 may include readable media in the form of volatile storage units, such as random access memory (RAM) 16201 and / or cache memory 16202, and may further include read-only memory (ROM) 16203.

[0197] Storage unit 1620 may also include a program / utility 16204 having a set (at least one) program module 16205, such program module 16205 including but not limited to: operating system, one or more application programs, other program modules and program data, each or some combination of these examples may include an implementation of a network environment.

[0198] Bus 1630 can represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of the various bus structures.

[0199] Electronic device 1600 can also communicate with one or more external devices 1640 (e.g., keyboard, pointing device, Bluetooth device, etc.), one or more devices that enable a user to interact with electronic device 1600, and / or any device that enables electronic device 1600 to communicate with one or more other computing devices (e.g., router, modem, etc.). This communication can be performed via input / output (I / O) interface 1650. Furthermore, electronic device 1600 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 1660. As shown, network adapter 1660 communicates with other modules of electronic device 1600 via bus 1630. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 1600, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.

[0200] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, terminal device, or network device, etc.) to execute the methods according to the embodiments of this disclosure.

[0201] Based on the same inventive concept, this disclosure also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the log data processing method described above. Since the principle by which this computer-readable storage medium embodiment solves the problem is similar to that of the above method embodiments, the implementation of this computer-readable storage medium embodiment can refer to the implementation of the above method embodiments, and repeated details will not be elaborated further.

[0202] More specific examples of computer-readable storage media in this disclosure may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0203] In this disclosure, a computer-readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of transmitting, propagating, or transmitting a program for use by or in connection with an instruction execution system, apparatus, or device.

[0204] Optionally, the program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.

[0205] In practical implementation, program code for performing the operations of this disclosure can be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java and C++, and conventional procedural programming languages ​​such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0206] Based on the same inventive concept, this disclosure also provides a computer program product, including a computer program or instructions, which, when executed by a processor, implement the log data processing method of any one of the above method embodiments. Since the principle by which this computer program product embodiment solves the problem is similar to that of the above method embodiments, the implementation of this computer program product embodiment can refer to the implementation of the above method embodiments, and repeated details will not be elaborated further.

[0207] It should be noted that although several modules or units for the device used to perform actions have been mentioned in the detailed description above, this division is not mandatory. In fact, according to embodiments of this disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.

[0208] Furthermore, although the steps of the method in this disclosure are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additional or alternative steps may be omitted, multiple steps may be combined into one step, and / or a step may be broken down into multiple steps.

[0209] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, mobile terminal, or network device, etc.) to execute the methods according to the embodiments of this disclosure.

[0210] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the appended claims.

Claims

1. A log data processing method, characterized in that, Applied to the client side, including: Multimedia communication data is transmitted to the multimedia server through the first long connection, and network status information of the first long connection and local log data of the client are obtained. The network status information and the local log data are encapsulated to obtain multimedia log data, wherein the multimedia log data carries the association information of the multimedia communication data; The multimedia log data is transmitted to the log server via a second long connection; In response to the disconnection of the second long connection, the multimedia log data is stored in one or more local log files on the client. In response to the reconnection of the second long connection, the one or more local log files are uploaded to the log server through the reconnected second long connection.

2. The method according to claim 1, characterized in that, The process of encapsulating the network status information and the local log data to obtain multimedia log data includes: Obtain the timestamp information of the network status information and the local log data; Based on the network status information and the timestamp information of the local log data, determine the multimedia communication data packet from the multimedia communication data and obtain the encapsulation sequence number of the multimedia communication data packet; The network status information, the local log data, and the encapsulation sequence number of the multimedia communication data packet are encapsulated, and the encapsulated multimedia log data carries the encapsulation sequence number of the multimedia communication data packet.

3. The method according to claim 1, characterized in that, Before storing the multimedia log data in one or more local log files of the client in response to the disconnection of the second long connection, the method further includes: Based on the transmission bandwidth requirement information of the first long connection, configure the file size threshold of the local log file, wherein the size of the file size threshold is negatively correlated with the transmission bandwidth requirement information of the first long connection.

4. The method according to claim 3, characterized in that, After configuring the file size threshold of the local log file based on the transmission bandwidth requirement information of the first long connection, the method further includes: The file size threshold is updated based on the network status information of the first long connection, wherein the network status information includes at least the network transmission bandwidth, and the file size threshold is positively correlated with the network transmission bandwidth.

5. The method according to claim 1, characterized in that, Before uploading the one or more local log files to the log server via the reconnected second long connection in response to the reconnection of the second long connection, the method further includes: According to a preset token verification time interval, a token verification request is sent to the log server, wherein the token verification request carries the client's token information; Receive the token verification result returned by the log server based on the token verification request; If the token verification result indicates that the client's token information has not exceeded the token expiration time, a reconnection request is sent to the log server according to a preset reconnection time interval, wherein the reconnection time interval is less than the token verification time interval.

6. The method according to claim 5, characterized in that, After receiving the token verification result returned by the log server based on the token verification request, the method further includes: If the token verification result indicates that the client's token information has exceeded the token expiration time, the second long connection shall be closed. If there are unuploaded local log files on the client, a log upload failure message is generated, wherein the log upload failure message is used to indicate to the client that there is log data that failed to be uploaded; In response to the log upload operation performed by the user based on the log upload failure message, the local log file stored on the client is uploaded to the log server through other communication methods.

7. The method according to claim 1, characterized in that, The client's local log files are stored in a local log folder created on the client's local machine; Specifically, in response to the reconnection of the second long connection, uploading the one or more local log files to the log server via the reconnected second long connection includes: In response to the reconnection of the second long connection, the local log folder is traversed periodically; When there are multiple unuploaded local log files in the local log folder, the multiple local log files are sorted according to the generation time of each local log file; According to the sorting results, the log files that have not been uploaded in the local log folder are uploaded to the log server in sequence through the second long connection that has been reconnected; Delete the successfully uploaded local log files in the local log folder.

8. A log data processing method, characterized in that, Applied to log servers, including: Multimedia log data sent by the client is received through a second long connection. The multimedia log data is obtained by the client encapsulating the network status information of the first long connection and the client's local log data. The first long connection is used for the client to transmit multimedia communication data with the multimedia server. The multimedia log data carries the association information of the multimedia communication data. Receive the reconnection request sent by the client, and reconnect the second long connection if the client's token information has not exceeded the token expiration time; In response to the reconnection of the second long connection, one or more local log files uploaded by the client are received through the reconnected second long connection, wherein the one or more local log files store multimedia log data generated by the client during the period when the second long connection was disconnected.

9. The method according to claim 8, characterized in that, The associated information of the multimedia communication data is the encapsulation sequence number generated when the multimedia communication data is encapsulated into a multimedia communication data packet; the method further includes: The multimedia log data is decapsulated to obtain the encapsulation sequence number of the multimedia communication data packet, the network status information of the first long connection, and the local log data of the client; Based on the encapsulation sequence number of the decapsulated multimedia communication data packet, the network status information of the first long connection and the local log data of the client are associated with the corresponding multimedia communication data packet.

10. A client, characterized in that, include: The first long-connection data transmission module is used to transmit multimedia communication data with the multimedia server through the first long connection, and to obtain the network status information of the first long connection and the local log data of the client. The data processing module is used to encapsulate the network status information and the local log data to obtain multimedia log data, wherein the multimedia log data carries the association information of the multimedia communication data; The second long-connection data transmission module is used to transmit the multimedia log data to the log server through the second long connection; A log file local storage module is used to store the multimedia log data in one or more local log files of the client in response to the disconnection of the second long connection; The log file upload module is used to upload one or more local log files to the log server in response to the reconnection of the second long connection.

11. A log server, characterized in that, include: The log data receiving module is used to receive multimedia log data sent by the client through a second long connection. The multimedia log data is obtained by the client encapsulating the network status information of the first long connection and the client's local log data. The first long connection is used by the client to transmit multimedia communication data with the multimedia server. The multimedia log data carries the association information of the multimedia communication data. The network connection reconnection module is used to receive a reconnection request sent by the client and reconnect the second long connection if the client's token information has not exceeded the token expiration time. The log file receiving module is configured to receive one or more local log files uploaded by the client in response to the reconnection of the second long connection, wherein the one or more local log files store multimedia log data generated by the client during the period when the second long connection was disconnected.

12. An electronic device, characterized in that, include: processor; as well as Memory for storing the executable instructions of the processor; The processor is configured to execute the log data processing method of any one of claims 1 to 9 by executing the executable instructions.

13. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the log data processing method according to any one of claims 1 to 9.

14. A computer program product comprising: A computer program or instruction, characterized in that, when executed by a processor, the computer program or instruction implements the log data processing method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • Unified service traffic-limiting fusing platform and method thereof

    CN111787073A

  • Heterogeneous host-oriented network management and control system

    CN115333915A