Program running problem positioning method and device, equipment and storage medium

By receiving user requests to generate execution tasks, performing multi-dimensional analysis, and generating alarm information, the problem of accurately locating application runtime errors is solved, improving the efficiency of location and information generation.

CN114185747BActive Publication Date: 2026-04-17CHINA PING AN PROPERTY INSURANCE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHINA PING AN PROPERTY INSURANCE CO LTD
Filing Date
2021-12-14
Publication Date
2026-04-17

AI Technical Summary

Technical Problem

In existing technologies, users cannot provide effective information when applications malfunction, making it difficult to locate operational problems. Existing location methods cannot accurately identify operational issues.

Method used

By receiving user requests, generating execution tasks, obtaining response results, performing multi-dimensional analysis, identifying operating users, obtaining input parameters from the preset message system, and generating alarm information.

Benefits of technology

It enables accurate identification of operational problems when users cannot provide valid information, improves the efficiency of alarm information generation, and helps R&D users quickly understand the problems encountered by users.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114185747B_ABST
    Figure CN114185747B_ABST
Patent Text Reader

Abstract

This invention relates to monitoring, and provides a method, apparatus, device, and storage medium for locating program execution problems. The method receives user requests, wherein the user request includes user identity information and execution information; generates an execution task based on the user identity information and the execution information; when the execution task is detected to be completed, obtains the response result of the execution task; performs multi-dimensional analysis on the response result to obtain the result category of the execution task in each dimension; if the result category includes a preset category, identifies the user who made the request, and obtains the input parameters of the user request from a preset message system based on the user; generates alarm information based on the input parameters and the preset category, which can accurately locate the operational problem encountered by the user. Furthermore, this invention also relates to blockchain technology, and the alarm information can be stored in the blockchain.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of monitoring technology, and in particular to a method, apparatus, device, and storage medium for locating program execution problems. Background Technology

[0002] As the business expanded, the number of users of the application increased, and so did the frequency of runtime errors encountered by users. However, the inventors realized that the application directly outputs the error result when a runtime error occurs, making it impossible for users to provide effective information about the cause of the error. Current methods for locating runtime problems rely on analyzing the entire process log of the user's actions, but due to multiple interfering factors in the process log, it is impossible to accurately pinpoint the operational problem encountered by the user. Summary of the Invention

[0003] In view of the above, it is necessary to provide a method, apparatus, device and storage medium for locating program operation problems, which can accurately locate the operational problems encountered by the user when the user cannot provide effective information.

[0004] On one hand, this invention proposes a method for locating program execution problems, the method comprising:

[0005] Receive user requests, wherein the user requests include user identity information and execution information;

[0006] An execution task is generated based on the user identity information and the execution information;

[0007] When the execution task is detected to have been completed, the response result of the execution task is obtained;

[0008] The response results are analyzed in multiple dimensions to obtain the result categories of the executed task in each dimension;

[0009] If the result category includes a preset category, then the user who made the user request is identified, and the input parameters of the user request are obtained from the preset message system based on the user who made the user request.

[0010] Alarm information is generated based on the input parameters and the preset category.

[0011] According to a preferred embodiment of the present invention, before receiving a user request, the method further includes:

[0012] Receive login requests from user accounts;

[0013] Extract the user account's identifier and password request from the login request;

[0014] Call the login interface to check whether the account identifier matches the requested password;

[0015] If the account identifier matches the password requested by the account, then the user account is confirmed to have logged in successfully.

[0016] According to a preferred embodiment of the present invention, generating the execution task based on the user identity information and the execution information includes:

[0017] Based on the login request, the application logged into by the user account is identified as the target application;

[0018] Locate the database server corresponding to the target application from the preset server cluster;

[0019] Extract the user identification code of the user from the user identity information;

[0020] The user account information is obtained from the database server based on the user identification code.

[0021] The execution information is encapsulated based on the account information to obtain the execution task.

[0022] According to a preferred embodiment of the present invention, the step of obtaining the input parameters of the user request from the preset messaging system according to the operation user includes:

[0023] Based on the user identification code, each block in the preset message system is traversed;

[0024] The block that successfully matches the user identification code is identified as the storage block of the operating user;

[0025] Obtain the request identifier of the user request;

[0026] The incremental information corresponding to both the request identifier and the preset tag is obtained from the storage block and used as the input parameter.

[0027] According to a preferred embodiment of the present invention, obtaining the response result of the task execution includes:

[0028] The target time corresponding to the completion of the task is located and monitored;

[0029] Obtain the task identifier of the task to be executed;

[0030] Log information is retrieved from the log database based on the task identifier and the target time.

[0031] The log information message is parsed to obtain the response result.

[0032] According to a preferred embodiment of the present invention, the multi-dimensional approach includes a key behavior dimension, a result processing dimension, and a timeliness processing dimension. The multi-dimensional analysis of the response results to obtain the result categories of the executed task in each dimension includes:

[0033] Extract behavioral information from the response result, obtain the behavior mapping table of the key behavioral dimension, and traverse the behavior mapping table based on the behavioral information. If the behavioral information matches any preset behavior in the behavior mapping table, then determine the result category of the execution task on the key behavioral dimension as any preset behavior.

[0034] Extract the task execution time of the task from the response result. If the task execution time is greater than or equal to a preset time threshold, then determine the result category of the task in the timeliness dimension as a slow processing task.

[0035] Extract the response code from the response result and perform mapping processing on the response code to obtain the result category of the execution task in the result processing dimension.

[0036] According to a preferred embodiment of the present invention, generating alarm information based on the input parameters and the preset category includes:

[0037] The input parameters and the preset categories are labeled to obtain data labels for the input parameters and the preset categories;

[0038] The alarm information is obtained by writing the input parameters and the preset category into the preset template according to the data label.

[0039] On the other hand, the present invention also proposes a program execution problem localization device, the program execution problem localization device comprising:

[0040] A receiving unit is configured to receive a user request, wherein the user request includes user identity information and execution information;

[0041] The generation unit is used to generate an execution task based on the user identity information and the execution information;

[0042] The acquisition unit is used to acquire the response result of the execution task when it is detected that the execution task has been completed.

[0043] An analysis unit is used to perform multi-dimensional analysis on the response results to obtain the result category of the executed task in each dimension;

[0044] The acquisition unit is further configured to identify the user who made the user request if the result category includes a preset category, and obtain the input parameters of the user request from a preset message system based on the user who made the user request;

[0045] The generation unit is used to generate alarm information based on the input parameters and the preset category.

[0046] On the other hand, the present invention also proposes an electronic device, the electronic device comprising:

[0047] Memory, which stores computer-readable instructions; and

[0048] The processor executes computer-readable instructions stored in the memory to implement the program execution problem localization method.

[0049] On the other hand, the present invention also proposes a computer-readable storage medium storing computer-readable instructions, which are executed by a processor in an electronic device to implement the program execution problem localization method.

[0050] As can be seen from the above technical solutions, the present invention identifies the execution information by using account information corresponding to the user's identity information, thereby obtaining the execution task identified by the operating user. This facilitates the direct retrieval of input parameters when the execution task encounters an error. Furthermore, by performing multi-dimensional analysis on the response results, the result category corresponding to the execution task can be comprehensively and accurately identified. When the result category includes the preset category, the alarm information is generated, improving the generation efficiency of alarm information. At the same time, by generating the alarm information, it is beneficial for R&D users to quickly learn about the operational problems encountered by the operating user when running the application. Attached Figure Description

[0051] Figure 1 This is a flowchart of a preferred embodiment of the program execution problem localization method of the present invention.

[0052] Figure 2 This is a functional block diagram of a preferred embodiment of the program execution problem location device of the present invention.

[0053] Figure 3 This is a schematic diagram of the structure of an electronic device that implements the method for locating program execution problems according to the present invention. Detailed Implementation

[0054] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be described in detail below with reference to the accompanying drawings and specific embodiments.

[0055] like Figure 1 The diagram shown is a flowchart of a preferred embodiment of the program execution problem localization method of the present invention. Depending on different requirements, the order of the steps in this flowchart can be changed, and some steps can be omitted.

[0056] The method for locating program execution problems can acquire and process relevant data based on artificial intelligence technology. Artificial intelligence (AI) is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to obtain optimal results.

[0057] Foundational technologies for artificial intelligence generally include sensors, dedicated AI chips, cloud computing, distributed storage, big data processing, operating / interactive systems, and mechatronics. AI software technologies mainly encompass computer vision, robotics, biometrics, speech processing, natural language processing, and machine learning / deep learning.

[0058] The program execution problem localization method is applied to one or more electronic devices. The electronic device is a device that can automatically perform numerical calculations and / or information processing according to pre-set or stored computer-readable instructions. Its hardware includes, but is not limited to, microprocessors, application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), digital signal processors (DSPs), embedded devices, etc.

[0059] The electronic device can be any electronic product that can interact with the user, such as a personal computer, tablet computer, smartphone, personal digital assistant (PDA), game console, interactive network television (IPTV), smart wearable device, etc.

[0060] The electronic devices may include network devices and / or user devices. The network devices include, but are not limited to, single network electronic devices, groups of multiple network electronic devices, or cloud computing-based systems consisting of a large number of hosts or network electronic devices.

[0061] The network in which the electronic device is located includes, but is not limited to: the Internet, wide area network, metropolitan area network, local area network, virtual private network (VPN), etc.

[0062] S10, Receive a user request, wherein the user request includes user identity information and execution information.

[0063] In at least one embodiment of the present invention, the user request can be triggered when the user performs any operation. The arbitrary operation includes user purchase orders and other operation information.

[0064] The user identity information is used to indicate the user who performed the user request.

[0065] The execution information refers to the information that requires task processing.

[0066] In at least one embodiment of the present invention, the method further includes, before receiving a user request:

[0067] Receive login requests from user accounts;

[0068] Extract the user account's identifier and password request from the login request;

[0069] Call the login interface to check whether the account identifier matches the requested password;

[0070] If the account identifier matches the password requested by the account, then the user account is confirmed to have logged in successfully.

[0071] The login request can be triggered by the user. The user account refers to a registered account in any application.

[0072] The account identifier is used to indicate the user account, and the account request password refers to the password information entered by the user when logging into the user account.

[0073] By verifying the user account before receiving a user request, it can be ensured that the user account has the authority to perform user operations, thereby improving the security of the execution of the user request.

[0074] S11, Generate an execution task based on the user identity information and the execution information.

[0075] In at least one embodiment of the present invention, the execution task refers to a task carrying the account information of the operating user corresponding to the user identity information and the execution information.

[0076] In at least one embodiment of the present invention, the electronic device generates an execution task based on the user identity information and the execution information, including:

[0077] Based on the login request, the application logged into by the user account is identified as the target application;

[0078] Locate the database server corresponding to the target application from the preset server cluster;

[0079] Extract the user identification code of the user from the user identity information;

[0080] The user account information is obtained from the database server based on the user identification code.

[0081] The execution information is encapsulated based on the account information to obtain the execution task.

[0082] The target application can be any platform or webpage.

[0083] The preset server cluster usually refers to a REDIS cluster.

[0084] The database server stores relevant operational information about the target application. For example, the database server stores registration information for multiple accounts, which may include membership information, etc.

[0085] The login request can accurately identify the target application, and based on the target application, the database server can be accurately located from the preset server cluster. Thus, based on the user identification code, the account information can be accurately obtained, and the execution task can be generated based on the account information, making it easier to identify the operation account of the execution task.

[0086] Specifically, the electronic device uses the account information as a request header and the execution information as the message content to generate the execution task.

[0087] S12, when it is detected that the execution task has been completed, the response result of the execution task is obtained.

[0088] In at least one embodiment of the present invention, the electronic device invokes a monitoring module to monitor the execution of the task.

[0089] In at least one embodiment of the present invention, the response result includes the relevant behavioral operations in the execution task, the time spent processing the execution task, and the response status corresponding to the processing of the execution task.

[0090] In at least one embodiment of the present invention, the electronic device obtains the response result of the task execution by:

[0091] The target time corresponding to the completion of the task is located and monitored;

[0092] Obtain the task identifier of the task to be executed;

[0093] Log information is retrieved from the log database based on the task identifier and the target time.

[0094] The log information message is parsed to obtain the response result.

[0095] The target time refers to the time when the task is completed.

[0096] The log repository stores relevant log information during task execution.

[0097] The log information can be accurately obtained by using the target time and the task identifier, thereby accurately obtaining the response result.

[0098] S13, perform multi-dimensional analysis on the response results to obtain the result categories of the executed task in each dimension.

[0099] In at least one embodiment of the present invention, the multi-dimensional dimension includes a key behavior dimension, a result processing dimension, and a timeliness processing dimension.

[0100] The response results correspond to different result categories for each dimension. For example, the result category for the key behavior dimension could be a purchase order behavior, etc. The result category for the result processing dimension could be normal processing results and abnormal processing results. The result category for the timeliness processing dimension could be slow processing tasks and fast processing tasks.

[0101] In at least one embodiment of the present invention, the electronic device performs multi-dimensional analysis on the response result to obtain the result categories of the executed task in each dimension, including:

[0102] Extract behavioral information from the response result, obtain the behavior mapping table of the key behavioral dimension, and traverse the behavior mapping table based on the behavioral information. If the behavioral information matches any preset behavior in the behavior mapping table, then determine the result category of the execution task on the key behavioral dimension as any preset behavior.

[0103] Extract the task execution time of the task from the response result. If the task execution time is greater than or equal to a preset time threshold, then determine the result category of the task in the timeliness dimension as a slow processing task.

[0104] Extract the response code from the response result and perform mapping processing on the response code to obtain the result category of the execution task in the result processing dimension.

[0105] The response result includes behavioral information from the task execution, such as purchase order behavior, check-in behavior, etc.

[0106] The behavior mapping table stores multiple behaviors that require special attention. For example, the behavior mapping table may store multiple behaviors related to monetary amounts.

[0107] The task execution time refers to the time spent processing the task. For example, the task execution time could be 50 seconds.

[0108] The preset time threshold can be set according to the average time it takes for the electronic device to process requests on the target application.

[0109] The result categories of the execution task in the result processing dimension include normal processing results and abnormal processing results.

[0110] By matching the behavioral information with the behavioral mapping table, the result category of the execution task in the key behavioral dimension can be accurately determined. By comparing the task execution time with the preset time threshold, the result category of the execution task in the timeliness dimension can be accurately determined. By mapping the response code, the result category of the execution task in the result processing dimension can be accurately obtained.

[0111] In at least one embodiment of the present invention, if the behavior information fails to match any preset behaviors in the behavior mapping table, the electronic device determines the result category of the execution task in the key behavior dimension as a configuration category. The configuration category indicates that the behavior information does not include key behaviors.

[0112] In at least one embodiment of the present invention, if the task execution time is less than a preset time threshold, the electronic device determines the result category of the execution task in the timeliness dimension as a fast processing task.

[0113] In at least one embodiment of the present invention, depending on the different response codes, the electronic device obtains different result categories of the execution task in the result processing dimension. For example, if the response code is 0, the result category of the execution task in the result processing dimension can be a normal processing result; conversely, if the response code is 1, the result category of the execution task in the result processing dimension can be an abnormal processing result.

[0114] S14, if the result category includes a preset category, then identify the user who made the user request, and obtain the input parameters of the user request from the preset message system according to the user who made the user request.

[0115] In at least one embodiment of the present invention, the preset categories include categories that are unfavorable to users, such as abnormal processing results and slow processing tasks.

[0116] The user who initiates the user request refers to the user who triggers the request. The user who initiates the request can be a member of any application.

[0117] The preset message system can be a consumption system such as KAFKA.

[0118] The input parameters include object information from the user request.

[0119] In at least one embodiment of the present invention, before the user obtains the input parameters of the user request from a preset messaging system according to the operating user, the method further includes:

[0120] The user request is decoupled based on the AOP algorithm to obtain the input parameters;

[0121] The mapping relationship between the user request and the input parameters is stored in the preset message system.

[0122] In at least one embodiment of the present invention, the electronic device obtains the input parameters of the user request from a preset messaging system based on the operating user, including:

[0123] Based on the user identification code, each block in the preset message system is traversed;

[0124] The block that successfully matches the user identification code is identified as the storage block of the operating user;

[0125] Obtain the request identifier of the user request;

[0126] The incremental information corresponding to both the request identifier and the preset tag is obtained from the storage block and used as the input parameter.

[0127] The storage block refers to the storage of all information related to the operating user. For example, the storage block may store the operating user's task requests, etc.

[0128] The preset label is used to indicate the input parameters.

[0129] By locating the storage block from the preset message system, the input parameters can be obtained from the storage block without fully traversing the preset message system, thus improving the efficiency of obtaining the input parameters.

[0130] S15, generate alarm information based on the input parameters and the preset category.

[0131] It should be emphasized that, to further ensure the privacy and security of the aforementioned alarm information, the alarm information can also be stored in a blockchain node.

[0132] In at least one embodiment of the present invention, the alarm information is used to notify the operation user of the problems encountered by the user when running the target application.

[0133] In at least one embodiment of the present invention, the electronic device generates alarm information based on the input parameters and the preset category, including:

[0134] The input parameters and the preset categories are labeled to obtain data labels for the input parameters and the preset categories;

[0135] The alarm information is obtained by writing the input parameters and the preset category into the preset template according to the data label.

[0136] The data tag refers to the tag information of the input parameter and the preset category. For example, if the input parameter is 60b4681e026fc287, then the data tag is RequestId.

[0137] The preset template refers to template information containing multiple data tags.

[0138] By performing tag recognition on the input parameters and the preset category, the data tags can be accurately identified. Then, based on the data tags, the input parameters and the preset category are written into a preset template, which can quickly generate the alarm information.

[0139] As can be seen from the above technical solutions, the present invention identifies the execution information by using account information corresponding to the user's identity information, thereby obtaining the execution task identified by the operating user. This facilitates the direct retrieval of input parameters when the execution task encounters an error. Furthermore, by performing multi-dimensional analysis on the response results, the result category corresponding to the execution task can be comprehensively and accurately identified. When the result category includes the preset category, the alarm information is generated, improving the generation efficiency of alarm information. At the same time, by generating the alarm information, it is beneficial for R&D users to quickly learn about the operational problems encountered by the operating user when running the application.

[0140] like Figure 2The diagram shown is a functional block diagram of a preferred embodiment of the program execution problem localization device of the present invention. The program execution problem localization device 11 includes a receiving unit 110, a generating unit 111, an acquiring unit 112, an analyzing unit 113, a storing unit 114, an extracting unit 115, a detecting unit 116, a determining unit 117, and a decoupling unit 118. The module / unit referred to in this invention refers to a series of computer-readable instruction segments that can be acquired by the processor 13 and perform a fixed function, and are stored in the memory 12. In this embodiment, the functions of each module / unit will be described in detail in subsequent embodiments.

[0141] The receiving unit 110 receives a user request, wherein the user request includes user identity information and execution information.

[0142] In at least one embodiment of the present invention, the user request can be triggered when the user performs any operation. The arbitrary operation includes user purchase orders and other operation information.

[0143] The user identity information is used to indicate the user who performed the user request.

[0144] The execution information refers to the information that requires task processing.

[0145] In at least one embodiment of the present invention, the receiving unit 110 receives a login request from a user account before receiving a user request;

[0146] Extraction unit 115 extracts the user account identifier and account request password from the login request;

[0147] The detection unit 116 calls the login interface to detect whether the account identifier matches the account request password;

[0148] If the account identifier matches the requested password, the determining unit 117 determines that the user account has successfully logged in.

[0149] The login request can be triggered by the user. The user account refers to a registered account in any application.

[0150] The account identifier is used to indicate the user account, and the account request password refers to the password information entered by the user when logging into the user account.

[0151] By verifying the user account before receiving a user request, it can be ensured that the user account has the authority to perform user operations, thereby improving the security of the execution of the user request.

[0152] The generation unit 111 generates an execution task based on the user identity information and the execution information.

[0153] In at least one embodiment of the present invention, the execution task refers to a task carrying the account information of the operating user corresponding to the user identity information and the execution information.

[0154] The task to be executed refers to a task that carries the account information of the user and the user's request.

[0155] In at least one embodiment of the present invention, the generation unit 111 generates an execution task based on the user identity information and the execution information, including:

[0156] Based on the login request, the application logged into by the user account is identified as the target application;

[0157] Locate the database server corresponding to the target application from the preset server cluster;

[0158] Extract the user identification code of the user from the user identity information;

[0159] The user account information is obtained from the database server based on the user identification code.

[0160] The execution information is encapsulated based on the account information to obtain the execution task.

[0161] The target application can be any platform or webpage.

[0162] The preset server cluster usually refers to a REDIS cluster.

[0163] The database server stores relevant operational information about the target application. For example, the database server stores registration information for multiple accounts, which may include membership information, etc.

[0164] The login request can accurately identify the target application, and based on the target application, the database server can be accurately located from the preset server cluster. Thus, based on the user identification code, the account information can be accurately obtained, and the execution task can be generated based on the account information, making it easier to identify the operation account of the execution task.

[0165] Specifically, the generation unit 111 uses the account information as a request header and the execution information as the message content to generate the execution task.

[0166] When the execution task is detected to be completed, the acquisition unit 112 acquires the response result of the execution task.

[0167] In at least one embodiment of the present invention, the acquisition unit 112 calls the monitoring module to monitor the execution of the task.

[0168] In at least one embodiment of the present invention, the response result includes the relevant behavioral operations in the execution task, the time spent processing the execution task, and the response status corresponding to the processing of the execution task.

[0169] In at least one embodiment of the present invention, the acquisition unit 112 acquires the response result of the executed task by including:

[0170] The target time corresponding to the completion of the task is located and monitored;

[0171] Obtain the task identifier of the task to be executed;

[0172] Log information is retrieved from the log database based on the task identifier and the target time.

[0173] The log information message is parsed to obtain the response result.

[0174] The target time refers to the time when the task is completed.

[0175] The log repository stores relevant log information during task execution.

[0176] The log information can be accurately obtained by using the target time and the task identifier, thereby accurately obtaining the response result.

[0177] The analysis unit 113 performs multi-dimensional analysis on the response results to obtain the result categories of the execution task in each dimension.

[0178] In at least one embodiment of the present invention, the multi-dimensional dimension includes a key behavior dimension, a result processing dimension, and a timeliness processing dimension.

[0179] The response results correspond to different result categories for each dimension. For example, the result category for the key behavior dimension could be a purchase order behavior, etc. The result category for the result processing dimension could be normal processing results and abnormal processing results. The result category for the timeliness processing dimension could be slow processing tasks and fast processing tasks.

[0180] In at least one embodiment of the present invention, the analysis unit 113 performs multi-dimensional analysis on the response result to obtain the result categories of the execution task in each dimension, including:

[0181] Extract behavioral information from the response result, obtain the behavior mapping table of the key behavioral dimension, and traverse the behavior mapping table based on the behavioral information. If the behavioral information matches any preset behavior in the behavior mapping table, then determine the result category of the execution task on the key behavioral dimension as any preset behavior.

[0182] Extract the task execution time of the task from the response result. If the task execution time is greater than or equal to a preset time threshold, then determine the result category of the task in the timeliness dimension as a slow processing task.

[0183] Extract the response code from the response result and perform mapping processing on the response code to obtain the result category of the execution task in the result processing dimension.

[0184] The response result includes behavioral information from the task execution, such as purchase order behavior, check-in behavior, etc.

[0185] The behavior mapping table stores multiple behaviors that require special attention. For example, the behavior mapping table may store multiple behaviors related to monetary amounts.

[0186] The task execution time refers to the time spent processing the task. For example, the task execution time could be 50 seconds.

[0187] The preset time threshold can be set based on the average time it takes for the electronic device to process requests on the target application.

[0188] The result categories of the execution task in the result processing dimension include normal processing results and abnormal processing results.

[0189] By matching the behavioral information with the behavioral mapping table, the result category of the execution task in the key behavioral dimension can be accurately determined. By comparing the task execution time with the preset time threshold, the result category of the execution task in the timeliness dimension can be accurately determined. By mapping the response code, the result category of the execution task in the result processing dimension can be accurately obtained.

[0190] In at least one embodiment of the present invention, if the behavior information fails to match any of the preset behaviors in the behavior mapping table, the analysis unit 113 determines the result category of the execution task on the key behavior dimension as a configuration category. The configuration category indicates that the behavior information does not include any key behaviors.

[0191] In at least one embodiment of the present invention, if the task execution time is less than a preset time threshold, the analysis unit 113 determines the result category of the execution task in the timeliness dimension as a fast processing task.

[0192] In at least one embodiment of the present invention, depending on the different response codes, the analysis unit 113 obtains that the result category of the execution task in the result processing dimension is different. For example, if the response code is 0, the result category of the execution task in the result processing dimension can be a normal processing result; conversely, if the response code is 1, the result category of the execution task in the result processing dimension can be an abnormal processing result.

[0193] If the result category includes a preset category, the acquisition unit 112 identifies the user who made the user request and obtains the input parameters of the user request from the preset message system according to the user.

[0194] In at least one embodiment of the present invention, the preset categories include categories that are unfavorable to users, such as abnormal processing results and slow processing tasks.

[0195] The user who initiates the user request refers to the user who triggers the request. The user who initiates the request can be a member of any application.

[0196] The preset message system can be a consumption system such as KAFKA.

[0197] The input parameters include object information from the user request.

[0198] In at least one embodiment of the present invention, before the user obtains the input parameters of the user request from the preset message system according to the operation user, the decoupling unit 118 performs decoupling processing on the user request based on the AOP algorithm to obtain the input parameters;

[0199] Storage unit 114 stores the mapping relationship between the user request and the input parameters in the preset message system.

[0200] In at least one embodiment of the present invention, the acquisition unit 112 acquires the input parameters of the user request from a preset message system based on the operating user, including:

[0201] Based on the user identification code, each block in the preset message system is traversed;

[0202] The block that successfully matches the user identification code is identified as the storage block of the operating user;

[0203] Obtain the request identifier of the user request;

[0204] The incremental information corresponding to both the request identifier and the preset tag is obtained from the storage block and used as the input parameter.

[0205] The storage block refers to the storage of all information related to the operating user. For example, the storage block may store the operating user's task requests, etc.

[0206] The preset label is used to indicate the input parameters.

[0207] By locating the storage block from the preset message system, the input parameters can be obtained from the storage block without fully traversing the preset message system, thus improving the efficiency of obtaining the input parameters.

[0208] The generation unit 111 generates alarm information based on the input parameters and the preset category.

[0209] It should be emphasized that, to further ensure the privacy and security of the aforementioned alarm information, the alarm information can also be stored in a blockchain node.

[0210] In at least one embodiment of the present invention, the alarm information is used to notify the operation user of the problems encountered by the user when running the target application.

[0211] In at least one embodiment of the present invention, the generation unit 111 generates alarm information according to the input parameters and the preset category, including:

[0212] The input parameters and the preset categories are labeled to obtain data labels for the input parameters and the preset categories;

[0213] The alarm information is obtained by writing the input parameters and the preset category into the preset template according to the data label.

[0214] The data tag refers to the tag information of the input parameter and the preset category. For example, if the input parameter is 60b4681e026fc287, then the data tag is RequestId.

[0215] The preset template refers to template information containing multiple data tags.

[0216] By performing tag recognition on the input parameters and the preset category, the data tags can be accurately identified. Then, based on the data tags, the input parameters and the preset category are written into a preset template, which can quickly generate the alarm information.

[0217] As can be seen from the above technical solutions, the present invention identifies the execution information by using account information corresponding to the user's identity information, thereby obtaining the execution task identified by the operating user. This facilitates the direct retrieval of input parameters when the execution task encounters an error. Furthermore, by performing multi-dimensional analysis on the response results, the result category corresponding to the execution task can be comprehensively and accurately identified. When the result category includes the preset category, the alarm information is generated, improving the generation efficiency of alarm information. At the same time, by generating the alarm information, it is beneficial for R&D users to quickly learn about the operational problems encountered by the operating user when running the application.

[0218] like Figure 3 The diagram shown is a schematic representation of the structure of an electronic device that implements the program execution problem localization method of the present invention.

[0219] In one embodiment of the present invention, the electronic device 1 includes, but is not limited to, a memory 12, a processor 13, and computer-readable instructions stored in the memory 12 and executable on the processor 13, such as a program execution problem locator.

[0220] Those skilled in the art will understand that the schematic diagram is merely an example of electronic device 1 and does not constitute a limitation on electronic device 1. It may include more or fewer components than shown in the diagram, or combine certain components, or different components. For example, electronic device 1 may also include input / output devices, network access devices, buses, etc.

[0221] The processor 13 can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor. The processor 13 is the computing core and control center of the electronic device 1, connecting various parts of the electronic device 1 through various interfaces and lines, and executing the operating system of the electronic device 1, as well as various installed application programs and program code.

[0222] For example, the computer-readable instructions can be divided into one or more modules / units, which are stored in the memory 12 and executed by the processor 13 to complete the present invention. The one or more modules / units can be a series of computer-readable instruction segments capable of performing a specific function, which describe the execution process of the computer-readable instructions in the electronic device 1. For example, the computer-readable instructions can be divided into a receiving unit 110, a generating unit 111, an acquiring unit 112, an analyzing unit 113, a storing unit 114, an extracting unit 115, a detecting unit 116, a determining unit 117, and a decoupling unit 118.

[0223] The memory 12 can be used to store the computer-readable instructions and / or modules. The processor 13 implements various functions of the electronic device 1 by running or executing the computer-readable instructions and / or modules stored in the memory 12 and calling the data stored in the memory 12. The memory 12 may mainly include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function (such as sound playback function, image playback function, etc.), etc.; the data storage area may store data created according to the use of the electronic device, etc. The memory 12 may include non-volatile and volatile memory, such as: hard disk, memory, plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, at least one disk storage device, flash memory device, or other storage devices.

[0224] The memory 12 can be the external memory and / or internal memory of the electronic device 1. Furthermore, the memory 12 can be a physical memory, such as a memory module, a TF card (Trans-flash Card), etc.

[0225] If the modules / units integrated in the electronic device 1 are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments of the present invention can also be implemented by instructing related hardware through computer-readable instructions. The computer-readable instructions can be stored in a computer-readable storage medium, and when executed by a processor, the computer-readable instructions can implement the steps of the various method embodiments described above.

[0226] The computer-readable instructions include computer-readable instruction code, which may be in the form of source code, object code, executable file, or some intermediate form. The computer-readable medium may include: any entity or device capable of carrying the computer-readable instruction code, recording medium, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), and random access memory (RAM).

[0227] The blockchain referred to in this invention is a novel application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanisms, and encryption algorithms. Essentially, a blockchain is a decentralized database, a chain of data blocks linked together using cryptographic methods. Each data block contains information about a batch of network transactions, used to verify the validity of the information (anti-counterfeiting) and generate the next block. A blockchain can include an underlying blockchain platform, a platform product service layer, and an application service layer.

[0228] Combination Figure 1 The memory 12 in the electronic device 1 stores computer-readable instructions to implement a method for locating program execution problems, and the processor 13 can execute the computer-readable instructions to achieve the following:

[0229] Receive user requests, wherein the user requests include user identity information and execution information;

[0230] An execution task is generated based on the user identity information and the execution information;

[0231] When the execution task is detected to have been completed, the response result of the execution task is obtained;

[0232] The response results are analyzed in multiple dimensions to obtain the result categories of the executed task in each dimension;

[0233] If the result category includes a preset category, then the user who made the user request is identified, and the input parameters of the user request are obtained from the preset message system based on the user who made the user request.

[0234] Alarm information is generated based on the input parameters and the preset category.

[0235] Specifically, the specific implementation method of the processor 13 for the above-mentioned computer-readable instructions can be found in [reference needed]. Figure 1 The descriptions of the relevant steps in the corresponding embodiments are not repeated here.

[0236] In the several embodiments provided by this invention, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and other division methods may be used in actual implementation.

[0237] The computer-readable storage medium stores computer-readable instructions, which, when executed by the processor 13, are used to perform the following steps:

[0238] Receive user requests, wherein the user requests include user identity information and execution information;

[0239] An execution task is generated based on the user identity information and the execution information;

[0240] When the execution task is detected to have been completed, the response result of the execution task is obtained;

[0241] The response results are analyzed in multiple dimensions to obtain the result categories of the executed task in each dimension;

[0242] If the result category includes a preset category, then the user who made the user request is identified, and the input parameters of the user request are obtained from the preset message system based on the user who made the user request.

[0243] Alarm information is generated based on the input parameters and the preset category.

[0244] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.

[0245] Furthermore, the functional modules in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or in the form of hardware plus software functional modules.

[0246] Therefore, the embodiments should be considered exemplary and non-limiting in all respects, and the scope of the invention is defined by the appended claims rather than the foregoing description. Thus, all variations falling within the meaning and scope of equivalents of the claims are intended to be embraced within the invention. No appended diagram markings in the claims should be construed as limiting the scope of the claims.

[0247] Furthermore, it is clear that the word "comprising" does not exclude other units or steps, and the singular does not exclude the plural. The multiple units or devices described may also be implemented by a single unit or device through software or hardware. Terms such as "first," "second," etc., are used to indicate names and do not indicate any specific order.

[0248] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention.

Claims

1. A method for locating program execution problems, characterized in that, The method for locating program execution problems includes: Receive user requests, wherein the user requests include user identity information and execution information; The execution task is generated based on the user identity information and the execution information, including: identifying the application logged in by the user account as the target application based on the login request corresponding to the user account; locating the database server corresponding to the target application from a preset server cluster; extracting the user identification code of the user from the user identity information; obtaining the account information of the user account from the database server based on the user identification code; and encapsulating the execution information based on the account information to obtain the execution task. When the execution task is detected to have been completed, the response result of the execution task is obtained; The response results are analyzed in multiple dimensions to obtain the result categories of the executed task in each dimension. The multiple dimensions include key behavior dimension, result processing dimension, and timeliness processing dimension. Key behavior is used to indicate behaviors related to amount. If the result category includes a preset category, then the user who made the user request is identified, and the input parameters of the user request are obtained from a preset message system based on the user. This includes: traversing each block in the preset message system based on the user identification code; determining the block that successfully matches the user identification code as the storage block of the user; obtaining the request identifier of the user request; and obtaining incremental information from the storage block that corresponds to both the request identifier and the preset tag as the input parameters. Before obtaining the input parameters of the user request from the preset message system based on the user, the method further includes: decoupling the user request based on the AOP algorithm to obtain the input parameters. Alarm information is generated based on the input parameters and the preset category.

2. The method for locating program execution problems as described in claim 1, characterized in that, Before receiving a user request, the method further includes: Receive the login request from the user account; Extract the user account's identifier and password request from the login request; Call the login interface to check whether the account identifier matches the requested password; If the account identifier matches the password requested by the account, then the user account is confirmed to have logged in successfully.

3. The method for locating program execution problems as described in claim 1, characterized in that, The process of obtaining the response result of the executed task includes: The target time corresponding to the completion of the task is located and monitored; Obtain the task identifier of the task to be executed; Log information is retrieved from the log database based on the task identifier and the target time. The log information message is parsed to obtain the response result.

4. The method for locating program execution problems as described in claim 1, characterized in that, The multi-dimensional analysis includes key behavior dimensions, result processing dimensions, and timeliness processing dimensions. The multi-dimensional analysis of the response results yields the following result categories for the executed task in each dimension: Extract behavioral information from the response result, obtain the behavior mapping table of the key behavioral dimension, and traverse the behavior mapping table based on the behavioral information. If the behavioral information matches any preset behavior in the behavior mapping table, then determine the result category of the execution task on the key behavioral dimension as any preset behavior. Extract the task execution time of the task from the response result. If the task execution time is greater than or equal to a preset time threshold, then determine the result category of the task in the timeliness processing dimension as a slow processing task. Extract the response code from the response result and perform mapping processing on the response code to obtain the result category of the execution task in the result processing dimension.

5. The method for locating program execution problems as described in claim 1, characterized in that, The step of generating alarm information based on the input parameters and the preset category includes: The input parameters and the preset categories are labeled to obtain data labels for the input parameters and the preset categories; The alarm information is obtained by writing the input parameters and the preset category into the preset template according to the data label.

6. A device for locating program execution problems, characterized in that, The program execution problem location device includes: A receiving unit is configured to receive a user request, wherein the user request includes user identity information and execution information; The generation unit is configured to generate an execution task based on the user identity information and the execution information, including: identifying the application logged in by the user account as the target application based on the login request corresponding to the user account; locating the database server corresponding to the target application from a preset server cluster; extracting the user identification code of the user from the user identity information; obtaining the account information of the user account from the database server based on the user identification code; and encapsulating the execution information according to the account information to obtain the execution task. The acquisition unit is used to acquire the response result of the execution task when it is detected that the execution task has been completed. The analysis unit is used to perform multi-dimensional analysis on the response results to obtain the result category of the execution task in each dimension. The multi-dimensional analysis includes key behavior dimension, result processing dimension and timeliness processing dimension. Key behavior is used to indicate behaviors related to amount. The acquisition unit is further configured to, if the result category includes a preset category, identify the user making the user request, and obtain the input parameters of the user request from a preset message system based on the user making user, including: traversing each block in the preset message system based on the user identification code; determining the block that successfully matches the user identification code as the storage block of the user making user; obtaining the request identifier of the user request; and obtaining incremental information from the storage block that corresponds to both the request identifier and the preset tag as the input parameters; wherein, before obtaining the input parameters of the user request from the preset message system based on the user making user, the device further includes: a decoupling unit, configured to decouple the user request based on the AOP algorithm to obtain the input parameters; The generation unit is also used to generate alarm information based on the input parameters and the preset category.

7. An electronic device, characterized in that, The electronic device includes: Memory, which stores computer-readable instructions; and The processor executes computer-readable instructions stored in the memory to implement the program execution problem localization method as described in any one of claims 1 to 5.

8. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-readable instructions, which are executed by a processor in an electronic device to implement the program execution problem localization method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Method and system for monitoring property of web application program and web server

    CN102684934A

  • Application program running monitoring method and device, storage medium and electronic equipment

    CN111026612A