A method, device, storage medium and electronic equipment for locating faults

By inputting the status indicators of the fault source into the fitting model to determine its contribution, the problem of difficult to quickly and accurately locate the root cause indicators of the failure source of business execution failure in the prior art is solved, and efficient fault location is achieved.

CN116185681BActive Publication Date: 2025-03-14ALIPAY (HANGZHOU) INFORMATION TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211643825.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-20
Publication Date
2025-03-14
Estimated Expiration
2042-12-20

AI Technical Summary

Technical Problem

The prior art is difficult to quickly and accurately locate the root cause indicators that lead to failure of business execution, especially in the face of a huge number of services, manual positioning is inefficient.

Method used

By obtaining the status indicators of the fault source and inputting them into the pre-trained fit model for fitting, the contribution of each status indicator is determined, thereby positioning the root cause indicators of the fault source.

Benefits of technology

It realizes that after positioning the fault source, it quickly and accurately locates its root cause indicators, improves the fault positioning efficiency, and is suitable for various state indicators, regardless of their numerical range and physical significance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116185681B_ABST
    Figure CN116185681B_ABST
Patent Text Reader

Abstract

This specification discloses a method, device, storage medium and electronic device for fault location. In the fault location method provided in this specification, on the premise of locating the fault source, each state indicator of the fault source is obtained, and according to each state indicator, the number of business execution failures, i.e., the first number, is obtained by fitting through a pre-trained fitting model, and then for each state indicator, other indicators except the state indicator are input into the fitting model again, and the second number is obtained by fitting, and the contribution of the state indicator is determined according to the first number and the second number, as well as the two fitting processes, and finally the root cause indicator of the fault source is located according to the contribution of each state indicator. This method can accurately locate the root cause indicator of the fault source, and does not limit the numerical range and physical meaning of each state indicator. It is convenient and fast, and is also conducive to privacy protection.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computers, and in particular to a method, device, storage medium and electronic device for locating a fault. Background Art

[0002] With the continuous development of Internet technology and digital economy, the business forms of various industries have gradually become Internet-based. To date, the number of businesses in various industries has become extremely large.

[0003] As businesses in various industries are gradually becoming Internet-based, while the efficiency of business execution is improved, errors are inevitable during the execution process, such as payment failure in transaction payment business, or money not arriving in transfer business, etc. The reason for the failure of business execution is likely to be abnormality in the system indicators for executing the business, such as excessive utilization of the central processing unit (CPU) of the system executing the business, excessive memory utilization, too many transmission control protocol (TCP) connections, etc.

[0004] When a business fails to execute, timely locating the root cause of the failure can better solve the problem. Therefore, whether the root cause of the failure can be accurately located is an important issue for service providers. The existing technology can locate the fault source of the business execution failure. The fault source can be a container, virtual machine, hardware device, etc. used to execute the business. The cause of the failure of the fault source may be that the state indicator of the fault source has an abnormality. The fault source has many state indicators, such as CPU usage, memory usage, etc., so which specific state indicators have an abnormality and then cause the fault source to fail needs further confirmation (the state indicator that causes the fault source to fail is usually called the root cause indicator). After locating the fault source of the business execution failure, the existing technology usually relies on manual further locating of the root cause indicator of the fault source. However, facing the huge number of businesses today, it is far from enough to manually locate the root cause indicator of the fault source. Therefore, after locating the fault source of the business execution failure, how to locate the root cause indicator that causes the fault source to fail is an urgent problem to be solved. Summary of the invention

[0005] This specification provides a fault location method, device, storage medium and electronic device to at least partially solve the above problems existing in the prior art.

[0006] This manual adopts the following technical solutions:

[0007] This specification provides a fault location method, including:

[0008] Obtaining various status indicators of the fault source when the business system fails;

[0009] Inputting the state indicators into a pre-trained fitting model so that the model fits the input state indicators as a first fitting process, and obtaining the number of failed execution businesses output by the fitting model as a first number;

[0010] For each status indicator, the status indicator is taken as the target indicator, and other status indicators except the target indicator are taken as non-target indicators;

[0011] Inputting each non-target indicator into the fitting model so that the model fits each non-target indicator input as a second fitting process, and obtaining the number of failed execution businesses output by the fitting model as a second number;

[0012] Determine, according to the first number and the second number, and features output by each layer in the fitting model in the first fitting process and the second fitting process, a contribution of the target indicator to the first fitting process as the contribution of the target indicator;

[0013] According to the contribution of each state indicator, the root cause indicator of the fault source is located in each state indicator.

[0014] Optionally, the status indicators include at least one of CPU usage, memory usage, traffic, and number of TCP connections.

[0015] Optionally, pre-train the fitting model, specifically including:

[0016] Predetermining historical fault sources of the business system when faults have occurred in the past;

[0017] Obtaining each historical status indicator of the historical fault source when the fault occurred in history, and determining the actual number of failed services executed by the service system when the fault occurred in history, using each historical status indicator as a training sample, and using the actual number as a label corresponding to the training sample;

[0018] Inputting the training samples into the fitting model to be trained, so that the model fits the input historical status indicators, and obtaining the number of failed execution businesses output by the fitting model to be trained as the predicted number;

[0019] Taking the minimum difference between the predicted number and the labeled number as the training goal, the fitting model to be trained is trained to obtain a fitting model.

[0020] Optionally, determining the contribution of the target indicator to the first fitting process according to the first number and the second number, and features output by each layer in the fitting model in the first fitting process and the second fitting process, specifically includes:

[0021] Using the difference between the first number and the second number as the back propagation value of the last layer of the fitting model;

[0022] The last layer of the fitted model is used as a layer to be propagated;

[0023] Determine a propagation coefficient of a layer above the layer to be propagated in the fitting model according to features outputted in the first fitting process and the second fitting process;

[0024] Calculating the back propagation value of the previous layer according to the back propagation value of the layer to be propagated and the propagation coefficient of the previous layer;

[0025] The previous layer is re-determined as the layer to be propagated, and the back propagation value of the previous layer of the re-determined layer to be propagated is calculated, until the previous layer is the first layer of the fitting model, and the back propagation value of the first layer is used as the contribution of the target indicator to the first fitting process.

[0026] Optionally, the fitting model includes at least a multilayer perceptron with two layers.

[0027] Optionally, determining the propagation coefficient of the previous layer according to the features of the previous layer of the layer to be propagated in the fitting model output in the first fitting process and the second fitting process specifically includes:

[0028] The propagation coefficient of the previous layer is determined according to the features output by each node of the previous layer of the layer to be propagated in the fitting model during the first fitting process and the expectations of the features output by all nodes of the previous layer during the second fitting process.

[0029] Optionally, according to the contribution of each state indicator, locating the root cause indicator of the fault source in each state indicator specifically includes:

[0030] Comparing the contribution of each state indicator;

[0031] The state indicator with the largest contribution is located as the root cause indicator of the fault source.

[0032] This specification provides a fault location device, which is used to locate the root cause indicator of the fault source in the business system when a fault occurs in the business system; the device includes:

[0033] An acquisition module, used to acquire various status indicators of the fault source when a fault occurs in the business system;

[0034] A fitting module, used for inputting the state indicators into a pre-trained fitting model so that the model fits the input state indicators, as a first fitting process, obtaining the number of failed execution businesses output by the fitting model as a first number; for each state indicator, taking the state indicator as a target indicator, and taking other state indicators except the target indicator as non-target indicators; inputting each non-target indicator into the fitting model so that the model fits the input non-target indicators, as a second fitting process, obtaining the number of failed execution businesses output by the fitting model as a second number;

[0035] a determination module, configured to determine, according to the first number and the second number, and features output by each layer in the fitting model in the first fitting process and the second fitting process, a contribution of the target indicator to the first fitting process as the contribution of the target indicator;

[0036] The positioning module is used to locate the root cause indicator of the fault source in each state indicator according to the contribution of each state indicator.

[0037] Optionally, the status indicators include at least one of CPU usage, memory usage, traffic, and number of TCP connections.

[0038] Optionally, the fitting module is specifically used to predetermine historical fault sources when faults occurred in the business system in the past; obtain various historical status indicators when the historical fault sources failed in the past, and determine the actual number of businesses that failed to execute when the business system failed in the past, use the various historical status indicators as training samples, and use the actual numbers as labels corresponding to the training samples; input the training samples into the fitting model to be trained so that the model fits the input historical status indicators, and obtains the number of failed businesses output by the fitting model to be trained as the predicted number; and trains the fitting model to be trained with the minimum difference between the predicted number and the label as the training goal to obtain a fitting model.

[0039] Optionally, the determination module is specifically used to use the difference between the first number and the second number as the back propagation value of the last layer of the fitting model; use the last layer of the fitting model as the layer to be propagated; determine the propagation coefficient of the previous layer according to the characteristics output by the previous layer of the layer to be propagated in the first fitting process and the second fitting process in the fitting model; calculate the back propagation value of the previous layer according to the back propagation value of the layer to be propagated and the propagation coefficient of the previous layer; use the previous layer again as the layer to be propagated, and calculate the back propagation value of the previous layer of the re-determined layer to be propagated, until the previous layer is the first layer of the fitting model, and use the back propagation value of the first layer as the contribution of the target indicator to the first fitting process.

[0040] Optionally, the fitting model includes at least a multilayer perceptron with two layers.

[0041] Optionally, the determination module is specifically used to determine the propagation coefficient of the previous layer based on the characteristics output by each node of the previous layer of the layer to be propagated in the fitting model during the first fitting process and the expectations of the characteristics output by all nodes of the previous layer during the second fitting process.

[0042] Optionally, the positioning module is specifically used to compare the contribution of each state indicator; and locate the state indicator with the largest contribution as the root cause indicator of the fault source.

[0043] This specification provides a computer-readable storage medium, wherein the storage medium stores a computer program, and when the computer program is executed by a processor, the above-mentioned fault location method is implemented.

[0044] This specification provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the above-mentioned fault location method when executing the program.

[0045] At least one of the above technical solutions adopted in this specification can achieve the following beneficial effects:

[0046] In the fault location method provided in the present specification, on the premise of locating the fault source, each state indicator of the fault source is obtained, and according to each state indicator, a pre-trained fitting model is used to fit the number of business execution failures, that is, the first number, and then for each state indicator, other indicators except the state indicator are input into the fitting model again to fit the second number, and the contribution of the state indicator is determined based on the first number and the second number, as well as the two fitting processes, and finally the root cause indicator of the fault source is located according to the contribution of each state indicator.

[0047] It can be seen from the above method that this method can accurately locate the root cause indicators of the fault source, and does not limit the numerical range and physical meaning of each state indicator. It is convenient and fast and has a certain degree of versatility. BRIEF DESCRIPTION OF THE DRAWINGS

[0048] The drawings described herein are used to provide a further understanding of this specification and constitute a part of this specification. The illustrative embodiments and descriptions of this specification are used to explain this specification and do not constitute an improper limitation on this specification. In the drawings:

[0049] Figure 1 A flowchart of a fault location method in this specification;

[0050] Figure 2 A flowchart of the training and fitting model provided in this specification;

[0051] Figure 3 A schematic diagram of a fault location device provided in this specification;

[0052] Figure 4 The corresponding Figure 1 Schematic diagram of electronic equipment. DETAILED DESCRIPTION

[0053] In order to make the purpose, technical solutions and advantages of this specification more clear, the technical solutions of this specification will be clearly and completely described below in combination with the specific embodiments of this specification and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of this specification, not all of the embodiments. Based on the embodiments in this specification, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0054] The technical solutions provided by the embodiments of this specification are described in detail below in conjunction with the accompanying drawings.

[0055] Figure 1 A flowchart of a fault location method provided in this specification specifically includes the following steps:

[0056] S100: Acquire various status indicators of the fault source when the business system fails.

[0057] The method is applied to locate the root cause indicator of the fault source in the business system when a fault occurs in the business system.

[0058] In the technical solution protected by this application, the business system is a system for executing business, and the failure of the business system refers to a sudden increase in the number of business execution failures. The process of a single business is a link. For example, when opening a payment application to perform a payment operation, the process of money from a personal account to a merchant account is a business. In this process, calling an APP, a table, and a gateway constitutes a link, and this link is a business process.

[0059] The reason for an error in the execution of business by a business system may be that the business system has a fault. The source of the business execution failure in the business system is called a fault source. The fault source may be a container, a virtual machine, a hardware device, or other electronic equipment. The reason for the failure of the fault source may be that the status indicator of the fault source has an abnormality. The fault source has many status indicators, such as CPU usage, traffic data, number of TCP connections, memory usage, etc. The status indicator that causes the failure of the fault source is usually called a root cause indicator.

[0060] This application locates the root cause indicator of the fault source in each state indicator of the fault source on the premise that the fault source has been located. It should be noted that this specification does not limit the method of locating the fault source.

[0061] Specifically, the present application first obtains various status indicators when a fault source fails. The fault source failure may cause a sudden increase in the number of businesses that fail to execute the business system. The status indicators of a period of time when the number of businesses that fail to execute the business system suddenly increases are obtained (the period of time only includes the moment when the number of businesses that fail to execute the business system suddenly increases). For each status indicator, an indicator data is obtained at a preset interval. For example, indicator data such as CPU utilization rate, number of TCP connections, and memory utilization rate of the fault source within 30 minutes before the sudden increase in the number of businesses that fail to execute the business system are obtained. For each status indicator, an indicator data can be obtained every set period (such as one minute). Finally, the status indicators of the fault source every one minute within 30 minutes before the sudden increase in the number of businesses that fail to execute the business system are obtained, that is, 30 CPU utilization rates, 30 TCP connection numbers, and 30 memory utilization rates.

[0062] The present application does not limit whether the numerical range or physical meaning of the acquired state indicators are the same, that is, it does not limit whether the state indicators are isomorphic indicators. Heterogeneous indicators with different numerical ranges or physical meanings are also applicable to the present application.

[0063] S102: Input each state indicator into a pre-trained fitting model so that the model fits each state indicator input as a first fitting process, and obtain the number of failed execution services output by the fitting model as a first number.

[0064] The pre-trained fitting model is used to fit the number of failed business executions based on the input state indicators, that is, to infer the number of failed business executions that may occur in the business system within a period of time when the fault source is in the current state of the state indicators.

[0065] As described in step S100, whether it is a homogeneous or heterogeneous state indicator, the number of failed execution services can be obtained by fitting the pre-trained fitting model.

[0066] The fitting model includes multiple neural network layers, and the number of businesses that fail to execute in the business system is obtained by fitting the multiple neural network layers.

[0067] S104: For each state indicator, the state indicator is used as a target indicator, and other state indicators except the target indicator are used as non-target indicators.

[0068] Each state indicator is input into the fitting model to obtain the number of failed businesses output by the fitting model, that is, the number of failed businesses obtained under the combined influence of each state indicator is known. However, in order to determine the root cause indicator of the fault source, that is, to determine which state indicator or states have the greatest influence on the number of failed businesses, it is also necessary to separately compare the influence of each state indicator on the number of failed businesses.

[0069] Specifically, for each status indicator, the status indicator is used as the target indicator, and other status indicators except the target indicator are used as non-target indicators. The target indicator is the status indicator whose impact on the number of failed services needs to be determined, and other status indicators except the target indicator are called non-target indicators. Continuing with the above example, for the CPU usage, number of TCP connections, and memory usage within 30 minutes before the fault source fails, when it is necessary to determine the impact of the CPU usage on the number of failed services, the CPU usage is the target indicator, and the number of TCP connections and memory usage are non-target indicators.

[0070] S106: Input each non-target indicator into the fitting model so that the model fits each non-target indicator input as a second fitting process, and obtain the number of failed execution businesses output by the fitting model as a second number.

[0071] After the target indicator and the non-target indicator are determined, the non-target indicator is input into the fitting model, and the number of failed execution businesses output by the fitting model is obtained when the target indicator is missing from each state indicator.

[0072] S108: Determine the contribution of the target indicator to the first fitting process according to the first number and the second number, and the features output by each layer in the fitting model during the first fitting process and the second fitting process, as the contribution of the target indicator.

[0073] The influence of each status indicator on the number of failed businesses is called the contribution of each status indicator. It can be seen from steps S104 and S106 that the first number and the first fitting process are obtained by fitting all status indicators, and the second number and the second fitting process are obtained by fitting other status indicators (i.e., non-target indicators) except the target indicator, that is, the difference between the first number and the second number, and between the first fitting process and the second fitting process is the contribution of the target indicator.

[0074] Therefore, the method for determining the contribution of the target indicator is described as follows. Specifically, the contribution of the target indicator to the first fitting process is determined based on the difference between the first number and the second number, and the difference between the features output by each layer in the fitting model in the first fitting process and the second fitting process.

[0075] S110: Locating the root cause indicator of the fault source in each state indicator according to the contribution of each state indicator.

[0076] The contribution of each state indicator, that is, the influence of each state indicator on the number of failed services, is determined, and the root cause indicator of the fault source can be located in each state indicator according to the magnitude of the influence.

[0077] Optionally, the contribution of each state indicator can be compared, and the n state indicators with the largest contribution can be located as the root cause indicators of the fault source, where n is a natural number not greater than the total number of state indicators, and this application does not require a specific value for n.

[0078] It can be seen from the above method that, under the premise of locating the fault source, this method can accurately locate the root cause indicator of the fault source, and does not limit the numerical range and physical meaning of each state indicator of the acquired fault source. According to each state indicator, the number of business execution failures, that is, the first number, is obtained by fitting a pre-trained fitting model, and then for each state indicator, the other indicators except the state indicator are input into the fitting model again to obtain the second number by fitting. The contribution of the state indicator is determined according to the first number and the second number, as well as the two fitting processes. After determining the contribution of each state indicator, the root cause indicator of the fault source can be located based on it. It is convenient and fast while having a certain degree of versatility.

[0079] As described in step S104 above, the fitting model is pre-trained, and the training steps are as follows: Figure 2 As shown, including:

[0080] S200: predetermine historical fault sources when the business system has historically failed.

[0081] The business system has a historical failure, that is, a failure that occurred before the time when the fault source described in step S100 fails. The historical fault source may be the same as the fault source described in step S100, or may be different from the fault source described in step S100.

[0082] S202: Obtain various historical status indicators of the historical fault source when failures occurred in history, and determine the actual number of failed business operations executed by the business system when failures occurred in history, use the various historical status indicators as training samples, and use the actual number as a label corresponding to the training sample.

[0083] S204: Input the training samples into the fitting model to be trained, so that the model fits the input historical status indicators, and obtain the number of failed execution businesses output by the fitting model to be trained as the predicted number.

[0084] The fitting model to be trained includes multiple neural network layers, which are used to fit the predicted number of failed business executions based on each historical status indicator, that is, to simulate the historical fault source to execute business under the status of each historical status indicator, and predict the number of failed business executions of the historical fault source.

[0085] S206: Taking the minimum difference between the predicted number and the labeled number as a training target, the fitting model to be trained is trained to obtain a fitting model.

[0086] The training goal of the fitting model is to minimize the difference between the predicted number and the actual number, that is, to simulate the historical fault source to execute business under the status of each historical status indicator, so that the predicted business system may execute the number of failed businesses as accurately as possible during a period of time when the historical fault source is in the status of each status indicator.

[0087] Further, as described in step S108, determining the contribution of the target indicator to the first fitting process according to the first number and the second number, and the features output by each layer in the fitting model in the first fitting process and the second fitting process, specifically includes:

[0088] Using the difference between the first number and the second number as the back propagation value of the last layer of the fitting model;

[0089] The last layer of the fitted model is used as a layer to be propagated;

[0090] Determine a propagation coefficient of a layer above the layer to be propagated in the fitting model according to features outputted in the first fitting process and the second fitting process;

[0091] Calculating the back propagation value of the previous layer according to the back propagation value of the layer to be propagated and the propagation coefficient of the previous layer;

[0092] The previous layer is re-determined as the layer to be propagated, and the back propagation value of the previous layer of the re-determined layer to be propagated is calculated, until the previous layer is the first layer of the fitting model, and the back propagation value of the first layer is used as the contribution of the target indicator to the first fitting process.

[0093] Specifically, the first number is y, assuming that the i-th state indicator of the fault source is the target indicator x i , the second number is y′ i , the back propagation value of the last layer will be except x i After other state indicators (i.e. non-target indicators) other than are input into the fitting model, the propagation coefficient of the lth layer is The back propagation value of layer l is The back propagation value of layer l+1 is calculate

[0094]

[0095] Optionally, the fitting model includes at least a multilayer perceptron with two layers.

[0096] Optionally, the fitting model may have an activation function after the first neural network layer, such as a rectified linear unit (ReLU), and no activation function after the second layer, and directly output the fitting result. At the same time, the Elastic Net Penalty may be used for the MLP parameters, and the first layer norm and the second layer norm may be used to make a whole group of parameters associated with a certain target indicator sparse, thereby achieving a group sparsity effect.

[0097] If the fitted model includes at least two layers of multilayer perceptrons, then calculate x i Back propagation value of layer 1 You can determine x i Contribution to y:

[0098]

[0099] Optionally, the present application provides a general method (that is, applicable to both homogeneous state indicators and heterogeneous state indicators) for determining a propagation coefficient, wherein the propagation coefficient of the previous layer is determined according to the features output by the previous layer of the layer to be propagated in the fitting model in the first fitting process and the second fitting process, and specifically includes:

[0100] The propagation coefficient of the previous layer is determined according to the features output by each node of the previous layer of the layer to be propagated in the fitting model during the first fitting process and the expectations of the features output by all nodes of the previous layer during the second fitting process.

[0101] Specifically, using the above formula, represents the characteristics of the output of the jth node of the lth layer neural network in the first fitting process, represents the sum of the features of the outputs of all nodes of the l-th layer of the neural network during the first fitting process, represents the expected characteristics of the output of all nodes of the l-th layer neural network in the second fitting process, represents the expected sum of the features of the outputs of all nodes of the l-th layer of the neural network in the second fitting process. The propagation coefficient of the l-th layer is calculated according to the following formula:

[0102]

[0103] The back propagation value of the lth layer is calculated according to the following formula:

[0104]

[0105] Furthermore, the fitting model includes at least a multilayer perceptron with two layers, then the x i Back propagation value r of layer 1 i (1) , that is, x i Contribution to y:

[0106]

[0107] The above is a fault location method provided in one or more embodiments of this specification. Based on the same idea, this specification also provides a corresponding fault location device, such as Figure 3 shown.

[0108] Figure 3 A schematic diagram of a fault location device provided in this specification specifically includes:

[0109] The acquisition module 301 is used to acquire various status indicators of the fault source when the business system fails;

[0110] The fitting module 302 is used to input the state indicators into a pre-trained fitting model so that the model fits the input state indicators, as a first fitting process, and obtain the number of failed execution businesses output by the fitting model as a first number; for each state indicator, use the state indicator as a target indicator, and use other state indicators except the target indicator as non-target indicators; input each non-target indicator into the fitting model so that the model fits the input non-target indicators, as a second fitting process, and obtain the number of failed execution businesses output by the fitting model as a second number;

[0111] A determination module 303 is used to determine, according to the first number and the second number, and features output by each layer in the fitting model in the first fitting process and the second fitting process, a contribution of the target indicator to the first fitting process as the contribution of the target indicator;

[0112] The positioning module 304 is used to locate the root cause indicator of the fault source in each state indicator according to the contribution of each state indicator.

[0113] Optionally, the status indicators include at least one of CPU usage, memory usage, traffic, and number of TCP connections.

[0114] Optionally, the fitting module 302 is specifically used to predetermine historical fault sources when faults occurred in the business system in the past; obtain various historical status indicators when the historical fault sources failed in the past, and determine the actual number of businesses that failed to execute when the business system failed in the past, use the various historical status indicators as training samples, and use the actual numbers as labels corresponding to the training samples; input the training samples into the fitting model to be trained so that the model fits the input historical status indicators, and obtains the number of failed businesses output by the fitting model to be trained as the predicted number; and trains the fitting model to be trained with the minimum difference between the predicted number and the label as the training goal to obtain a fitting model.

[0115] Optionally, the determination module 303 is specifically used to use the difference between the first number and the second number as the back propagation value of the last layer of the fitting model; use the last layer of the fitting model as the layer to be propagated; determine the propagation coefficient of the previous layer according to the characteristics output by the previous layer of the layer to be propagated in the first fitting process and the second fitting process in the fitting model; calculate the back propagation value of the previous layer according to the back propagation value of the layer to be propagated and the propagation coefficient of the previous layer; use the previous layer again as the layer to be propagated, and calculate the back propagation value of the previous layer of the re-determined layer to be propagated, until the previous layer is the first layer of the fitting model, and use the back propagation value of the first layer as the contribution of the target indicator to the first fitting process.

[0116] Optionally, the fitting model includes at least a multilayer perceptron with two layers.

[0117] Optionally, the determination module 303 is specifically used to determine the propagation coefficient of the previous layer based on the characteristics output by each node of the previous layer of the layer to be propagated in the fitting model during the first fitting process and the expectations of the characteristics output by all nodes of the previous layer during the second fitting process.

[0118] Optionally, the positioning module 304 is specifically configured to compare the contribution of each of the state indicators; and locate the state indicator with the largest contribution as the root cause indicator of the fault source.

[0119] This specification also provides a computer-readable storage medium, which stores a computer program, which can be used to execute the above Figure 1 Provides a fault location method.

[0120] This manual also provides Figure 4 The structural diagram of the electronic device shown in FIG. Figure 4 As mentioned above, at the hardware level, the unmanned driving device includes a processor, an internal bus, a network interface, a memory, and a non-volatile memory, and may also include other hardware required for the business. The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it to achieve the above Figure 1 Of course, in addition to the software implementation, this specification does not exclude other implementations, such as logic devices or a combination of software and hardware, etc., that is, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.

[0121] In the 1990s, improvements to a technology could be clearly distinguished as hardware improvements (for example, improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the method flow). However, with the development of technology, many improvements to the method flow today can be regarded as direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that an improvement in a method flow cannot be implemented using a hardware entity module. For example, a programmable logic device (PLD) (such as a field programmable gate array (FPGA)) is such an integrated circuit whose logical function is determined by the user's programming of the device. Designers can "integrate" a digital system on a PLD by programming it themselves, without having to ask a chip manufacturer to design and produce a dedicated integrated circuit chip. Moreover, nowadays, instead of manually making integrated circuit chips, this kind of programming is mostly implemented by "logic compiler" software, which is similar to the software compiler used when developing and writing programs, and the original code before compilation must also be written in a specific programming language, which is called hardware description language (HDL). There is not only one HDL, but many kinds, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used ones are VHDL (Very-High-Speed ​​Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should also know that it is only necessary to program the method flow slightly in the above-mentioned hardware description languages ​​and program it into the integrated circuit, and then it is easy to obtain the hardware circuit that implements the logic method flow.

[0122] The controller can be implemented in any appropriate manner, for example, the controller can take the form of a microprocessor or processor and a computer-readable medium storing a computer-readable program code (such as software or firmware) that can be executed by the (micro)processor, a logic gate, a switch, an application-specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art also know that in addition to implementing the controller in a purely computer-readable program code manner, the controller can be implemented in the form of a logic gate, a switch, an application-specific integrated circuit, a programmable logic controller, and an embedded microcontroller by logically programming the method steps. Therefore, this controller can be considered as a hardware component, and the devices included therein for implementing various functions can also be regarded as structures within the hardware component. Or even, the devices for implementing various functions can be regarded as both software modules for implementing the method and structures within the hardware component.

[0123] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.

[0124] For the convenience of description, the above device is described in various units according to their functions. Of course, when implementing this specification, the functions of each unit can be implemented in the same or multiple software and / or hardware.

[0125] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0126] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0127] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0128] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0129] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0130] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0131] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0132] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0133] Those skilled in the art will appreciate that the embodiments of this specification may be provided as methods, systems or computer program products. Therefore, this specification may take the form of a complete hardware embodiment, a complete software embodiment or an embodiment combining software and hardware. Moreover, this specification may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0134] This specification may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. This specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.

[0135] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0136] The above description is only an embodiment of this specification and is not intended to limit this specification. For those skilled in the art, this specification may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of this specification should be included in the scope of the claims of this application.

Claims

1. A method for locating a fault, the method being applied to locating a root cause indicator of a fault source in a business system when a fault occurs in the business system; the method comprising: Obtaining various status indicators of the fault source when the business system fails; Inputting the state indicators into a pre-trained fitting model so that the model fits the input state indicators as a first fitting process, and obtaining the number of failed execution businesses output by the fitting model as a first number; For each status indicator, the status indicator is taken as the target indicator, and other status indicators except the target indicator are taken as non-target indicators; Inputting each non-target indicator into the fitting model so that the model fits each non-target indicator input as a second fitting process, and obtaining the number of failed execution businesses output by the fitting model as a second number; Determine, according to the first number and the second number, and features output by each layer in the fitting model in the first fitting process and the second fitting process, a contribution of the target indicator to the first fitting process as the contribution of the target indicator; According to the contribution of each state indicator, the root cause indicator of the fault source is located in each state indicator.

2. The method according to claim 1, wherein each status indicator comprises at least one of CPU usage, memory usage, traffic, and number of TCP connections.

3. The method according to claim 1, wherein the pre-training fitting model specifically comprises: Predetermining historical fault sources of the business system when faults have occurred in the past; Obtaining each historical status indicator of the historical fault source when the fault occurred in history, and determining the actual number of failed services executed by the service system when the fault occurred in history, using each historical status indicator as a training sample, and using the actual number as a label corresponding to the training sample; Inputting the training samples into the fitting model to be trained, so that the model fits the input historical status indicators, and obtaining the number of failed execution businesses output by the fitting model to be trained as the predicted number; Taking the minimum difference between the predicted number and the labeled number as the training goal, the fitting model to be trained is trained to obtain a fitting model.

4. The method according to claim 1, determining the contribution of the target indicator to the first fitting process according to the first number and the second number, and the features output by each layer in the fitting model in the first fitting process and the second fitting process, specifically comprising: Using the difference between the first number and the second number as the back propagation value of the last layer of the fitting model; The last layer of the fitted model is used as a layer to be propagated; Determine a propagation coefficient of a layer above the layer to be propagated in the fitting model according to features outputted in the first fitting process and the second fitting process; Calculating the back propagation value of the previous layer according to the back propagation value of the layer to be propagated and the propagation coefficient of the previous layer; The previous layer is re-determined as the layer to be propagated, and the back propagation value of the previous layer of the re-determined layer to be propagated is calculated, until the previous layer is the first layer of the fitting model, and the back propagation value of the first layer is used as the contribution of the target indicator to the first fitting process.

5. The method according to claim 1 or 4, wherein the fitting model comprises at least a multilayer perceptron having two layers.

6. The method according to claim 4, determining the propagation coefficient of the previous layer according to the features output by the previous layer of the layer to be propagated in the fitting model in the first fitting process and the second fitting process, specifically comprises: The propagation coefficient of the previous layer is determined according to the features output by each node of the previous layer of the layer to be propagated in the fitting model during the first fitting process and the expectations of the features output by all nodes of the previous layer during the second fitting process.

7. The method according to claim 1, locating the root cause indicator of the fault source in each state indicator according to the contribution of each state indicator, specifically comprising: Comparing the contribution of each state indicator; The state indicator with the largest contribution is located as the root cause indicator of the fault source.

8. A fault location device, the device is used to locate the root cause indicator of the fault source in the business system when a fault occurs in the business system; the device comprises: An acquisition module, used to acquire various status indicators of the fault source when a fault occurs in the business system; A fitting module, used for inputting the state indicators into a pre-trained fitting model, so that the model fits the input state indicators, as a first fitting process, and obtaining the number of failed execution businesses output by the fitting model as a first number; For each status indicator, the status indicator is used as a target indicator, and other status indicators except the target indicator are used as non-target indicators; each non-target indicator is input into the fitting model so that the model fits each input non-target indicator as a second fitting process, and the number of failed execution businesses output by the fitting model is obtained as a second number; a determination module, configured to determine, according to the first number and the second number, and features output by each layer in the fitting model in the first fitting process and the second fitting process, a contribution of the target indicator to the first fitting process as the contribution of the target indicator; The positioning module is used to locate the root cause indicator of the fault source in each state indicator according to the contribution of each state indicator.

9. The device as claimed in claim 8, wherein each status indicator comprises at least one of CPU usage, memory usage, flow, and number of TCP connections.

10. The device according to claim 8, wherein the fitting module is specifically used to predetermine the historical fault source when the business system fails in history; obtain each historical state indicator of the historical fault source when the failure occurs in history, and determine the actual number of failed businesses executed by the business system when the failure occurs in history, use each historical state indicator as a training sample, and use the actual number as a label corresponding to the training sample; Inputting the training samples into the fitting model to be trained, so that the model fits the input historical status indicators, and obtaining the number of failed execution businesses output by the fitting model to be trained as the predicted number; Taking the minimum difference between the predicted number and the labeled number as the training goal, the fitting model to be trained is trained to obtain a fitting model.

11. The device according to claim 8, wherein the determination module is specifically used to use the difference between the first number and the second number as the back propagation value of the last layer of the fitting model; use the last layer of the fitting model as the layer to be propagated; and determine the propagation coefficient of the previous layer according to the features output by the previous layer of the layer to be propagated in the fitting model during the first fitting process and the second fitting process; Calculating the back propagation value of the previous layer according to the back propagation value of the layer to be propagated and the propagation coefficient of the previous layer; The previous layer is re-determined as the layer to be propagated, and the back propagation value of the previous layer of the re-determined layer to be propagated is calculated, until the previous layer is the first layer of the fitting model, and the back propagation value of the first layer is used as the contribution of the target indicator to the first fitting process.

12. The device according to claim 8 or 11, wherein the fitting model comprises at least a multilayer perceptron having two layers.

13. In the device as claimed in claim 11, the determination module is specifically used to determine the propagation coefficient of the previous layer based on the characteristics output by each node of the previous layer of the layer to be propagated in the fitting model during the first fitting process and the expectations of the characteristics output by all nodes of the previous layer during the second fitting process.

14. The device according to claim 11, wherein the positioning module is specifically used to compare the contribution of each of the state indicators; and locate the state indicator with the largest contribution as the root cause indicator of the fault source.

15. A computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements the method according to any one of claims 1 to 7.

16. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method according to any one of claims 1 to 7 when executing the program.

Citation Information

Patent Citations

  • Root cause positioning method and device for application business exception

    CN114371950A

  • Abnormal data detection method and device

    CN115357764A