Abnormal attribution method and device for application program

By using an automated anomaly attribution method and historical runtime data to identify anomalous versions and configuration items, the problem of inefficient application anomaly attribution is solved, and efficient anomaly localization and repair are achieved.

CN121901004APending Publication Date: 2026-04-21BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
BEIJING ZITIAO NETWORK TECH CO LTD
Filing Date
2024-10-21
Publication Date
2026-04-21

AI Technical Summary

Technical Problem

In existing technologies, the attribution of application exceptions is inefficient, and exceptions cannot be located and fixed in a timely manner, mainly relying on manual investigation, which leads to low efficiency.

Method used

By determining the attribution window based on the target application's historical runtime data, identifying anomalous versions and obtaining a set of configuration items, configuration items are automatically screened to generate anomaly attribution reports, reducing manual operations.

Benefits of technology

It improves the efficiency of application exception attribution, enables automated exception location and repair, and reduces manual intervention.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121901004A_ABST
    Figure CN121901004A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides an exception attribution method and device for an application program. The method comprises the steps that an attribution window to which exceptions are to be attributed is obtained according to historical operation data of a target application program; the attribution window is a time period which takes the moment when the to-be-attributed abnormity begins to appear as the center and the time length is a preset time length; determining an abnormal version of the target application program according to the running data of each version of the target application program in the attribution window; obtaining a configuration item set according to the abnormal version, wherein the configuration item set comprises at least one configuration item introduced by the abnormal version; screening configuration items in the configuration item set to determine at least one abnormal configuration item; and generating an exception attribution report of the exception to be attributed according to the at least one exception configuration item. The method and the device are used for improving the efficiency of performing exception attribution on the application program.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of software operation and maintenance technology, and in particular to a method and apparatus for attributing anomalies in an application. Background Technology

[0002] Application anomaly attribution involves identifying the causes of abnormal behavior in an application. As the number of daily active users of an application continues to increase, anomalies such as crashes, freezes, and abnormal fluctuations in monitoring metrics frequently occur.

[0003] Currently, when an application experiences anomalies, it's necessary to investigate recent application version releases and configuration changes across various platforms, including deployment scale, experimental operations, and configuration distribution. After filtering out relevant information, further step-by-step queries across multiple platforms are required, along with manual comparison of problem characteristic values ​​to identify the root cause of any suspected issues. However, because this method of attributing application anomalies involves a lengthy investigation process and relies heavily on manual intervention, it is inefficient and may lead to delays in locating and fixing application anomalies. Summary of the Invention

[0004] In view of this, embodiments of this application provide an anomaly attribution method and apparatus for applications, which improves the efficiency of anomaly attribution for applications.

[0005] To achieve the above objectives, the technical solutions provided in this application are as follows:

[0006] In a first aspect, embodiments of this application provide an application exception attribution method, including:

[0007] The attribution window for the anomaly to be attributed is obtained based on the historical running data of the target application; the attribution window is a time period centered on the moment when the anomaly to be attributed first appears and with a preset duration.

[0008] Based on the runtime data of each version of the target application within the attribution window, determine the abnormal version of the target application;

[0009] A set of configuration items is obtained based on the abnormal version, the set of configuration items including at least one configuration item introduced by the abnormal version;

[0010] The configuration items in the set of configuration items are screened to identify at least one abnormal configuration item;

[0011] An anomaly attribution report for the anomaly to be attributed is generated based on the at least one anomaly configuration item.

[0012] As an optional implementation of this application, the step of obtaining the attribution window for the anomaly to be attributed based on the historical running data of the target application includes:

[0013] In the case where the anomaly to be attributed is a data fluctuation type anomaly, the anomaly index of the anomaly to be attributed is obtained in each statistical period based on the historical running data of the target application.

[0014] If the increase of the abnormal indicator for a first number of consecutive statistical periods is greater than the first threshold or the decrease of the abnormal indicator for a second number of consecutive statistical periods is greater than the second threshold, then the starting point of the first number of consecutive statistical periods or the second number of consecutive statistical periods is determined as the moment when the anomaly to be attributed begins to appear.

[0015] The attribution window for the anomaly to be attributed is determined based on the time at which the anomaly to be attributed first appears and the preset duration.

[0016] As an optional implementation of this application, the step of obtaining the attribution window for the anomaly to be attributed based on the historical running data of the target application includes:

[0017] In the case that the anomaly to be attributed is a crash-type anomaly, the frequency of occurrence of the anomaly to be attributed within each statistical period is obtained based on the historical running data of the target application.

[0018] If the frequency of occurrence of the anomaly to be attributed is greater than the threshold number within a third consecutive number of statistical periods, then the starting point of the third consecutive number of statistical periods is determined as the moment when the anomaly to be attributed begins to appear.

[0019] The attribution window for the anomaly to be attributed is determined based on the time at which the anomaly to be attributed first appears and the preset duration.

[0020] As an optional implementation of this application, determining the abnormal version of the target application based on the runtime data of each version of the target application within the attribution window includes:

[0021] Based on the historical operating data, obtain the fluctuation information of the abnormal indicators of the anomalies to be attributed to each version of the target application.

[0022] Obtain full-version fluctuation information of the abnormal indicators in the historical operating data;

[0023] Identify candidate versions in which the fluctuation information of the anomaly indicator of the anomaly to be attributed in each version of the target application matches the fluctuation information of the entire version.

[0024] The base version among the candidate versions is identified as the abnormal version.

[0025] As an optional implementation of this application, the step of obtaining the configuration item set according to the abnormal version includes:

[0026] Obtain the various development requirements for the aforementioned abnormal version;

[0027] Based on the correlation between the code corresponding to each development requirement and the anomaly to be attributed, at least one suspicious development requirement is identified.

[0028] The configuration item set is generated based on at least one suspected development requirement.

[0029] As an optional implementation of this application, the step of screening the configuration items in the configuration item set to determine at least one abnormal configuration item includes:

[0030] Obtain first fluctuation information and second fluctuation information corresponding to the target configuration item; the target configuration item is any one of the at least one abnormal configuration item, the first fluctuation information is the fluctuation information of the abnormal indicator of the anomaly to be attributed in the historical running data generated by the target application with the target configuration item applied; the second fluctuation information is the fluctuation information of the abnormal indicator of the anomaly to be attributed in the historical running data generated by the target application without the target configuration item applied.

[0031] Based on the first fluctuation information and the second fluctuation information, determine whether the target configuration item is an abnormal configuration item.

[0032] As an optional implementation of this application, the step of determining whether the target configuration item is an abnormal configuration item based on the first fluctuation information and the second fluctuation information includes:

[0033] If the first fluctuation information matches the full version fluctuation information of the abnormal indicator in the historical operation data, and the second fluctuation information does not match the full version fluctuation information, then the target configuration item is determined to be an abnormal configuration item.

[0034] If both the first fluctuation information and the second fluctuation information are consistent with the full version fluctuation information, then the target configuration item is determined not to be an abnormal configuration item.

[0035] As an optional implementation of this application, before generating the anomaly attribution report for the anomaly to be attributed based on the at least one anomaly configuration item, the method further includes:

[0036] Obtain auxiliary features of the anomaly to be attributed; the auxiliary features include at least one of the following: the system type of the device running the target application, the model of the device running the target application, the operating region of the target application, and the distribution channel of the target application;

[0037] The step of generating the anomaly attribution report for the anomaly to be attributed based on the at least one anomaly configuration item includes:

[0038] The anomaly attribution report is generated based on the at least one anomaly configuration item and the auxiliary feature.

[0039] Secondly, embodiments of this application provide an anomaly attribution device for an application, comprising:

[0040] The acquisition unit is used to acquire the attribution window of the anomaly to be attributed based on the historical running data of the target application; the attribution window is a time period centered on the moment when the anomaly to be attributed first appears and with a preset duration.

[0041] The determining unit is configured to determine the abnormal version of the target application based on the runtime data of each version of the target application within the attribution window;

[0042] A processing unit is configured to obtain a set of configuration items based on the abnormal version, the set of configuration items including at least one configuration item introduced by the abnormal version;

[0043] A filtering unit is used to screen the configuration items in the configuration item set to identify at least one abnormal configuration item;

[0044] A generation unit is configured to generate an anomaly attribution report for the anomaly to be attributed based on the at least one anomaly configuration item.

[0045] As an optional implementation of this application, the acquisition unit is specifically used to acquire, based on the historical running data of the target application, the abnormal indicators of the abnormality to be attributed within each statistical period when the abnormality to be attributed is a data fluctuation type abnormality; if the increase of the abnormal indicator for a first number of consecutive statistical periods is greater than a first threshold or the decrease of the abnormal indicator for a second number of consecutive statistical periods is greater than a second threshold, then the starting point of the first number of consecutive statistical periods or the second number of consecutive statistical periods is determined as the time when the abnormality to be attributed begins to appear; and the attribution window of the abnormality to be attributed is determined based on the time when the abnormality to be attributed begins to appear and the preset duration.

[0046] As an optional implementation of this application, the acquisition unit is specifically used to, when the anomaly to be attributed is a crash-type anomaly, acquire the frequency of occurrence of the anomaly to be attributed in each statistical period based on the historical running data of the target application; if the frequency of occurrence of the anomaly to be attributed in a third consecutive number of statistical periods is greater than a threshold number, then the starting point of the third consecutive number of statistical periods is determined as the time when the anomaly to be attributed begins to appear; and the attribution window of the anomaly to be attributed is determined based on the time when the anomaly to be attributed begins to appear and the preset duration.

[0047] As an optional implementation of this application, the determining unit is specifically configured to: obtain fluctuation information of the abnormal indicators of the anomaly to be attributed to each version of the target application based on the historical operating data; obtain full version fluctuation information of the abnormal indicators in the historical operating data; determine candidate versions in each version of the target application whose fluctuation information of the abnormal indicators of the anomaly to be attributed to the target application matches the full version fluctuation information; and determine the base version among the candidate versions as the abnormal version.

[0048] As an optional implementation of this application, the processing unit is specifically used to obtain each development requirement of the abnormal version; determine at least one suspicious development requirement based on the correlation between the code corresponding to each development requirement and the anomaly to be attributed; and generate the configuration item set based on the at least one suspicious development requirement.

[0049] As an optional implementation of this application, the filtering unit is specifically used to obtain first fluctuation information and second fluctuation information corresponding to the target configuration item; the target configuration item is any one of the at least one abnormal configuration item, the first fluctuation information is the fluctuation information of the abnormal indicator of the anomaly to be attributed in the historical running data generated by the target application that applied the target configuration item; the second fluctuation information is the fluctuation information of the abnormal indicator of the anomaly to be attributed in the historical running data generated by the target application that did not apply the target configuration item; and the target configuration item is determined to be an abnormal configuration item based on the first fluctuation information and the second fluctuation information.

[0050] As an optional implementation of this application, the filtering unit is specifically used to determine the target configuration item as an abnormal configuration item if the first fluctuation information matches the full version fluctuation information of the abnormal indicator in the historical operation data, and the second fluctuation information does not match the full version fluctuation information.

[0051] If both the first fluctuation information and the second fluctuation information are consistent with the full version fluctuation information, then the target configuration item is determined not to be an abnormal configuration item.

[0052] As an optional implementation of this application, the generation unit is further configured to obtain auxiliary features of the anomaly to be attributed before generating the anomaly attribution report of the anomaly to be attributed based on the at least one anomaly configuration item; the auxiliary features include at least one of the following: the system type of the device running the target application, the model of the device running the target application, the running region of the target application, and the distribution channel of the target application;

[0053] The generation unit is specifically used to generate the anomaly attribution report based on the at least one anomaly configuration item and the auxiliary feature.

[0054] Thirdly, embodiments of this application provide an electronic device, including: a memory and a processor, wherein the memory is used to store a computer program and the processor is used to cause the electronic device to implement the exception attribution method of the application described in any of the above embodiments when executing the computer program.

[0055] Fourthly, embodiments of this application provide a computer-readable storage medium that, when the computer program is executed by a computing device, causes the computing device to implement the exception attribution method of any of the above-described applications.

[0056] Fifthly, embodiments of this application provide a computer program product that, when run on a computer, enables the computer to implement the exception attribution method of any of the above-mentioned applications.

[0057] The application anomaly attribution method provided in this application, when attributing anomalies to a target application, first determines the attribution window for the anomaly based on the historical runtime data of the target application. Next, based on the runtime data of each version of the target application within this attribution window, the abnormal version of the target application is identified, and a set of configuration items containing at least one configuration item introduced by that abnormal version is obtained. Subsequently, the configuration items in the set are screened to identify at least one abnormal configuration item. Finally, an anomaly attribution report for the anomaly is generated based on these abnormal configuration items. Since the application anomaly attribution method provided in this application can automatically attribute application anomalies without relying on manual operation, this application embodiment can improve the efficiency of application anomaly attribution. Attached Figure Description

[0058] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0059] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the accompanying drawings that need to be called in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0060] Figure 1 A flowchart of the anomaly attribution method for the application provided in the embodiments of this application;

[0061] Figure 2 A schematic diagram of the fluctuation curves of all versions of the abnormal indicators provided in the embodiments of this application;

[0062] Figure 3 A schematic diagram of the fluctuation curves of the abnormal indicators corresponding to the various versions provided in the embodiments of this application;

[0063] Figure 4 A schematic diagram of the structure of the anomaly attribution device for the application provided in this application embodiment;

[0064] Figure 5 This is a schematic diagram of the hardware structure of the electronic device provided in the embodiments of this application. Detailed Implementation

[0065] To better understand the above-mentioned objectives, features, and advantages of this application, the solution of this application will be further described below. It should be noted that, unless otherwise specified, the embodiments and features described in these embodiments can be combined with each other.

[0066] Many specific details are set forth in the following description in order to provide a full understanding of this application, but this application may also be implemented in other ways different from those described herein. Obviously, the embodiments in the specification are only some embodiments of this application, and not all embodiments.

[0067] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design solutions. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner. Furthermore, in the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more.

[0068] This application provides an anomaly attribution method for an application, referring to... Figure 1 As shown, the anomaly attribution method of this application includes the following steps:

[0069] S101. Obtain the attribution window for the anomaly to be attributed based on the historical running data of the target application.

[0070] The attribution window is a time period centered on the moment when the anomaly to be attributed first appears and with a preset duration.

[0071] In some embodiments, the anomaly to be attributed is a data fluctuation anomaly, and the implementation of step S101 above may include the following steps a to c:

[0072] Step a: Obtain the anomaly indicators of the anomalies to be attributed within each statistical period based on the historical running data of the target application.

[0073] In this application's embodiments, data fluctuation anomalies refer to anomalies identified as unexpected or significant fluctuations in data generated during the operation of the target application. For example, the number of times the target application accesses a certain server decreases significantly during its operation. Another example is a significant increase in the memory usage of the target application during its operation.

[0074] In this embodiment, the anomaly index for an anomaly to be attributed refers to a specific quantitative parameter or characteristic used to measure and characterize the anomaly to be attributed. Anomaly indices can be various forms of data metrics, such as numerical indicators like data growth rate, volatility, and deviation; or they can be state-based indicators, such as the frequency, duration, and severity level of a certain error state. For example, if the anomaly to be attributed is network instability, then the anomaly index for the anomaly to be attributed could be the packet loss rate.

[0075] In this embodiment of the application, the statistical period can be 12 hours, 24 hours, etc., and the abnormal indicators to be attributed within the statistical period can be the average, median, maximum, minimum, etc. of the abnormal indicators within the statistical period. This embodiment of the application does not limit this.

[0076] Step b: If the increase of the abnormal indicator for a first number of consecutive statistical periods is greater than the first threshold or the decrease of the abnormal indicator for a second number of consecutive statistical periods is greater than the second threshold, then the starting point of the first number of consecutive statistical periods or the second number of consecutive statistical periods is determined as the moment when the anomaly to be attributed begins to appear.

[0077] It should be noted that if the anomaly to be attributed is an upward data anomaly, then if the increase in the anomaly indicator for a consecutive first number of statistical periods is greater than a first threshold, the starting point of the first number of statistical periods is determined as the time when the anomaly to be attributed begins to appear. For example, if the anomaly to be attributed is an abnormal increase in server traffic, then if the increase in server traffic for a consecutive first number of statistical periods is greater than the first threshold, the starting point of the first number of statistical periods is determined as the time when the abnormal increase in server traffic begins to appear. If the anomaly to be attributed is a downward data anomaly, then if the decrease in the anomaly indicator for a consecutive second number of statistical periods is greater than a second threshold, the starting point of the second number of statistical periods is determined as the time when the anomaly to be attributed begins to appear. For example, if the anomaly to be attributed is a significant decrease in page views, then if the decrease in page views for a consecutive second number of statistical periods is greater than the second threshold, the starting point of the second number of statistical periods is determined as the time when the abnormal decrease in page views begins to appear.

[0078] For example, refer to Figure 2 As shown, Figure 2 This is a schematic diagram of the fluctuation curves of the full version of the abnormal indicator. When the first quantity is 3, since the increase of the abnormal indicator is greater than the first threshold for more than 3 consecutive statistical periods starting from the 10th statistical period, the starting point T1 of the 10th statistical period is determined as the moment when the aforementioned attributable anomaly begins to appear.

[0079] Step c: Determine the attribution window of the anomaly to be attributed based on the time when the anomaly to be attributed first appears and the preset duration.

[0080] Since the attribution window is a time period centered on the moment when the anomaly to be attributed begins to appear and the time length is a preset duration, the starting position of the attribution window of the anomaly to be attributed can be half of the preset duration from the moment when the anomaly to be attributed begins to appear, and the ending position of the attribution window of the anomaly to be attributed can be half of the preset duration from the moment when the anomaly to be attributed begins to appear.

[0081] like Figure 2 As shown, the time when the anomaly to be attributed begins to appear is the starting point T1 of the 10th statistical period. When the preset duration is the length of 4 statistical periods, the starting position of the attribution window 200 is the starting position of the 8th statistical period, and the ending position of the attribution window 200 is the ending position of the 11th statistical period.

[0082] In some embodiments, the anomaly to be attributed is a crash-type anomaly, and the implementation of step S101 above may include the following steps 1 to 3:

[0083] Step 1: Obtain the frequency of occurrence of the anomaly to be attributed within each statistical period based on the historical running data of the target application.

[0084] In this embodiment of the application, a crash exception is an exception that causes an application to suddenly stop working during operation, become unable to continue performing tasks, and exhibit a crash state.

[0085] Step 2: If the frequency of occurrence of the anomaly to be attributed within a third consecutive number of statistical periods is greater than the threshold number, then the starting point of the third consecutive number of statistical periods is determined as the moment when the anomaly to be attributed begins to appear.

[0086] Step 3: Determine the attribution window of the anomaly to be attributed based on the time when the anomaly to be attributed first appears and the preset duration.

[0087] The implementation method of determining the attribution window of the anomaly to be attributed based on the time when the anomaly to be attributed first appears and the preset duration in step 3 above can refer to step c above. To avoid repetition, it will not be described again here.

[0088] S12. Based on the running data of each version of the target application in the attribution window, determine the abnormal version of the target application.

[0089] In some embodiments, determining the implementation of an anomalous version of the target application based on runtime data within the attribution window for each version of the target application may include the following steps I to IV:

[0090] Step 1: Based on the historical operation data, obtain the fluctuation information of the abnormal indicators of the anomalies to be attributed to each version of the target application.

[0091] In some embodiments, the fluctuation information of the abnormal indicator may include one or more of the following parameters: fluctuation amplitude of the abnormal indicator, trend change rate of the abnormal indicator, trend inflection point strength of the abnormal indicator, and smoothness of the abnormal indicator.

[0092] Step II: Obtain the full version fluctuation information of the abnormal indicators in the historical operation data.

[0093] For example, the full version fluctuation information of abnormal indicators can be as follows: Figure 2 As shown.

[0094] Step III: Identify candidate versions in which the fluctuation information of the abnormal indicators of the anomaly to be attributed in each version of the target application matches the fluctuation information of the entire version.

[0095] That is, among the various versions of the target application, the version whose fluctuation information of the abnormal indicator corresponding to the anomaly to be attributed matches the fluctuation information of the entire version is determined as the candidate version.

[0096] In this embodiment of the application, the fluctuation information of the abnormal indicator of the anomaly to be attributed to a certain version is consistent with the fluctuation information of the whole version, which means that the fluctuation trend, amplitude and other characteristics of the fluctuation information of the abnormal indicator of the anomaly to be attributed to a certain version are consistent with or match the fluctuation information of the whole version.

[0097] For example, refer to Figure 3 As shown, Figure 3 The target application versions, including versions A, B, C, and D, are shown as an example. When the fluctuation curves of the abnormal indicators across all versions are as follows... Figure 2 As shown, by Figure 3 As shown in the fluctuation curves 31, 32, 33, and 34 of the abnormal indicators corresponding to version A, version B, version C, and version D, the fluctuation curves of the abnormal indicators corresponding to versions C and D are consistent with the fluctuation curves of all versions. Therefore, versions C and D are identified as candidate versions.

[0098] Step IV: Set the base version in the candidate versions as the abnormal version.

[0099] In the embodiments of this application, the base version in the candidate versions refers to a version that is developed based on a certain version.

[0100] As mentioned in the previous example, the candidate versions include version C and version D. Version D is a version developed based on version C. Therefore, version C is identified as an abnormal version.

[0101] S13. Obtain the set of configuration items based on the abnormal version.

[0102] The configuration item set includes at least one configuration item introduced by the abnormal version.

[0103] The configuration items introduced in the abnormal version in this application embodiment may specifically include: experiment, configuration, strategy and other configuration items.

[0104] In some embodiments, the set of configuration items includes all configuration items introduced by the aberration version.

[0105] In some embodiments, obtaining the set of configuration items based on the abnormal version may include the following steps 131 to 133:

[0106] Step 131: Obtain the various development requirements for the abnormal version.

[0107] In some embodiments, the various development requirements for the abnormal version can be obtained from the MeeGo platform.

[0108] Step 132: Based on the correlation between the code corresponding to each development requirement and the anomaly to be attributed, identify at least one suspicious development requirement.

[0109] Step 133: Generate the set of configuration items based on the at least one suspected development requirement.

[0110] That is, the configuration item set only includes suspicious development requirements introduced by the abnormal version.

[0111] In the above embodiments, when obtaining the configuration item set based on the abnormal version, suspicious development requirements are determined based on the configuration item set obtained based on the abnormal version, and the configuration item set is generated only based on suspicious development requirements. Therefore, the above embodiments can reduce the number of configuration items in the configuration item set, thereby improving the efficiency of anomaly attribution.

[0112] S14. Screen the configuration items in the configuration item set to identify at least one abnormal configuration item.

[0113] In some embodiments, screening the configuration items in the configuration item set to determine the implementation of at least one abnormal configuration item may include the following steps 141 and 142:

[0114] Step 141: Obtain the first and second fluctuation information corresponding to the target configuration item.

[0115] Wherein, the target configuration item is any one of the at least one abnormal configuration item, the first fluctuation information is the fluctuation information of the abnormal indicator of the unattributed abnormality in the historical running data generated by the target application with the target configuration item applied; the second fluctuation information is the fluctuation information of the abnormal indicator of the unattributed abnormality in the historical running data generated by the target application without the target configuration item applied.

[0116] That is, the first fluctuation information and the second fluctuation information corresponding to the target configuration item are respectively the fluctuation information of the abnormal indicators of the anomaly to be attributed in the historical running data generated by the experimental group application and the fluctuation information of the abnormal indicators of the anomaly to be attributed in the historical running data generated by the control group application.

[0117] Step 142: Determine whether the target configuration item is an abnormal configuration item based on the first fluctuation information and the second fluctuation information.

[0118] In some embodiments, determining whether the target configuration item is an abnormal configuration item based on the first fluctuation information and the second fluctuation information includes:

[0119] If the first fluctuation information matches the full version fluctuation information of the abnormal indicator in the historical operation data, and the second fluctuation information does not match the full version fluctuation information, then the target configuration item is determined to be an abnormal configuration item.

[0120] Since the fluctuation information of the abnormal indicator of the anomaly to be attributed in the historical running data generated by the target application with the application using the target configuration item is consistent with the full version fluctuation information of the abnormal indicator, and the fluctuation information of the abnormal indicator of the anomaly to be attributed in the historical running data generated by the target application without the application using the target configuration item is inconsistent with the full version fluctuation information of the abnormal indicator, it can be concluded that the target configuration item caused the fluctuation of the abnormal indicator. Therefore, the target configuration item is identified as an abnormal configuration item.

[0121] In some embodiments, determining whether the target configuration item is an abnormal configuration item based on the first fluctuation information and the second fluctuation information includes:

[0122] If both the first fluctuation information and the second fluctuation information are consistent with the full version fluctuation information, then the target configuration item is determined not to be an abnormal configuration item.

[0123] Since the fluctuation information of the abnormal indicators of the unattributed anomalies in the historical running data generated by the target application with the target configuration item applied and the fluctuation information of the abnormal indicators of the unattributed anomalies in the historical running data generated by the target application without the target configuration item applied are both consistent with the full version fluctuation information of the abnormal indicators, it can be concluded that the fluctuation of the abnormal indicators is not caused by the target configuration item, but by other factors. Therefore, it is determined that the target configuration item is not an abnormal configuration item.

[0124] By screening each configuration item in the configuration item set one by one according to the above scheme, at least one abnormal configuration item can be obtained.

[0125] S15. Generate an anomaly attribution report for the anomaly to be attributed based on the at least one anomaly configuration item.

[0126] In some embodiments, the anomaly attribution report may include identification information for each anomaly configuration item, code snippets corresponding to the anomaly configuration item, and other content.

[0127] The application anomaly attribution method provided in this application, when attributing anomalies to a target application, first determines the attribution window for the anomaly based on the historical runtime data of the target application. Next, based on the runtime data of each version of the target application within this attribution window, the abnormal version of the target application is identified, and a set of configuration items containing at least one configuration item introduced by that abnormal version is obtained. Subsequently, the configuration items in the set are screened to identify at least one abnormal configuration item. Finally, an anomaly attribution report for the anomaly is generated based on these abnormal configuration items. Since the application anomaly attribution method provided in this application can automatically attribute application anomalies without relying on manual operation, this application embodiment can improve the efficiency of application anomaly attribution.

[0128] In some embodiments, before generating an anomaly attribution report for the anomaly to be attributed based on the at least one anomaly configuration item, the method further includes:

[0129] Obtain auxiliary features of the anomaly to be attributed; the auxiliary features include at least one of the following: the system type of the device running the target application, the model of the device running the target application, the operating region of the target application, and the distribution channel of the target application.

[0130] The step of generating an anomaly attribution report for the anomaly to be attributed based on the at least one anomaly configuration item includes: generating the anomaly attribution report based on the at least one anomaly configuration item and the auxiliary feature.

[0131] For example, if the auxiliary characteristic of the anomaly to be attributed is the system type of the device running the target application, and the target application runs on two operating systems, where the target application running on operating system A does not have any anomalies to be attributed, while all anomalies to be attributed occur on the target application running on operating system B, then operating system B can be described in the anomaly attribution report to provide a more detailed description of the cause of the anomaly to be attributed.

[0132] Based on the same inventive concept, as an implementation of the above method, this application embodiment also provides an application exception attribution device. This embodiment corresponds to the aforementioned method embodiment. For ease of reading, this embodiment will not repeat the details of the aforementioned method embodiment one by one, but it should be clear that the application exception attribution device in this embodiment can implement all the contents of the aforementioned method embodiment.

[0133] This application provides an anomaly attribution device for an application. Figure 4 A schematic diagram of the anomaly attribution device for this application, as shown below. Figure 4As shown, the anomaly attribution device 400 of the application includes:

[0134] The acquisition unit 41 is used to acquire the attribution window of the anomaly to be attributed based on the historical running data of the target application; the attribution window is a time period centered on the moment when the anomaly to be attributed first appears and with a preset duration.

[0135] The determining unit 42 is used to determine the abnormal version of the target application based on the running data of each version of the target application in the attribution window;

[0136] Processing unit 43 is configured to obtain a set of configuration items based on the abnormal version, the set of configuration items including at least one configuration item introduced by the abnormal version;

[0137] The filtering unit 44 is used to screen the configuration items in the configuration item set to identify at least one abnormal configuration item;

[0138] The generation unit 45 is used to generate an anomaly attribution report for the anomaly to be attributed based on the at least one anomaly configuration item.

[0139] As an optional implementation of this application, the acquisition unit 41 is specifically used to acquire, based on the historical running data of the target application, the abnormal indicators of the abnormality to be attributed within each statistical period when the abnormality to be attributed is a data fluctuation type abnormality; if the increase of the abnormal indicator for a consecutive first number of statistical periods is greater than a first threshold or the decrease of the abnormal indicator for a consecutive second number of statistical periods is greater than a second threshold, then the starting point of the consecutive first number of statistical periods or the consecutive second number of statistical periods is determined as the time when the abnormality to be attributed begins to appear; and the attribution window of the abnormality to be attributed is determined based on the time when the abnormality to be attributed begins to appear and the preset duration.

[0140] As an optional implementation of this application, the acquisition unit 41 is specifically used to, when the anomaly to be attributed is a crash-type anomaly, acquire the frequency of occurrence of the anomaly to be attributed in each statistical period based on the historical running data of the target application; if the frequency of occurrence of the anomaly to be attributed in a third consecutive number of statistical periods is greater than a threshold number, then the starting point of the third consecutive number of statistical periods is determined as the time when the anomaly to be attributed begins to appear; and the attribution window of the anomaly to be attributed is determined based on the time when the anomaly to be attributed begins to appear and the preset duration.

[0141] As an optional implementation of this application, the determining unit 42 is specifically configured to: obtain fluctuation information of the abnormal indicators of the anomaly to be attributed to each version of the target application corresponding to the historical running data; obtain full version fluctuation information of the abnormal indicators in the historical running data; determine candidate versions in each version of the target application whose fluctuation information of the abnormal indicators of the anomaly to be attributed to the target application matches the full version fluctuation information; and determine the base version in the candidate versions as the abnormal version.

[0142] As an optional implementation of this application, the processing unit 43 is specifically used to obtain each development requirement of the abnormal version; determine at least one suspicious development requirement based on the correlation between the code corresponding to each development requirement and the anomaly to be attributed; and generate the configuration item set based on the at least one suspicious development requirement.

[0143] As an optional implementation of this application, the filtering unit 44 is specifically used to obtain first fluctuation information and second fluctuation information corresponding to the target configuration item; the target configuration item is any one of the at least one abnormal configuration item, the first fluctuation information is the fluctuation information of the abnormal indicator of the anomaly to be attributed in the historical running data generated by the target application that applied the target configuration item; the second fluctuation information is the fluctuation information of the abnormal indicator of the anomaly to be attributed in the historical running data generated by the target application that did not apply the target configuration item; and the target configuration item is determined to be an abnormal configuration item based on the first fluctuation information and the second fluctuation information.

[0144] As an optional implementation of this application, the filtering unit 44 is specifically used to determine that the target configuration item is an abnormal configuration item if the first fluctuation information matches the full version fluctuation information of the abnormal indicator in the historical running data, and the second fluctuation information does not match the full version fluctuation information; and if both the first fluctuation information and the second fluctuation information match the full version fluctuation information, then the target configuration item is determined not to be an abnormal configuration item.

[0145] As an optional implementation of this application, the generation unit 45 is further configured to obtain auxiliary features of the anomaly to be attributed before generating the anomaly attribution report based on the at least one anomaly configuration item; the auxiliary features include at least one of the following: system type of the device running the target application, model of the device running the target application, running region of the target application, and distribution channel of the target application; the generation unit 45 is specifically configured to generate the anomaly attribution report based on the at least one anomaly configuration item and the auxiliary features.

[0146] The exception attribution device for the application provided in this application embodiment can execute the exception attribution method for the application provided in any of the above embodiments. Its implementation principle and technical effect are similar, and will not be repeated here.

[0147] Based on the same inventive concept, embodiments of this application also provide an electronic device. Figure 5 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application, such as... Figure 5 As shown, the electronic device provided in this embodiment includes: a memory 501 and a processor 502. The memory 501 is used to store computer programs, and the processor 502 is used to execute the exception attribution method of any application provided in the above embodiment when executing the computer programs.

[0148] Based on the same inventive concept, embodiments of this application also provide a computer-readable storage medium storing a computer program that, when executed by a processor, causes the computing device to implement the exception attribution method for any of the applications provided in the above embodiments.

[0149] Based on the same inventive concept, this application also provides a computer program product that, when run on a computer, enables the computing device to implement the exception attribution method of any application provided in the above embodiments.

[0150] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product implemented on one or more computer-usable storage media containing computer-usable program code.

[0151] The processor 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. A general-purpose processor can be a microprocessor or any conventional processor.

[0152] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, like read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0153] Computer-readable media include both permanent and non-permanent, removable and non-removable storage media. Storage media can store information using any method or technology; the 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 technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media do not include transient computer-readable media, such as modulated data signals and carrier waves.

[0154] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the foregoing embodiments, or make equivalent substitutions for some or all of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.

Claims

1. An anomaly attribution method for an application, characterized in that, include: Obtain the attribution window for the anomaly to be attributed based on the historical runtime data of the target application; The attribution window is a time period centered on the moment when the anomaly to be attributed first appears and with a preset duration. Based on the runtime data of each version of the target application within the attribution window, determine the abnormal version of the target application; A set of configuration items is obtained based on the abnormal version, the set of configuration items including at least one configuration item introduced by the abnormal version; The configuration items in the set of configuration items are screened to identify at least one abnormal configuration item; An anomaly attribution report for the anomaly to be attributed is generated based on the at least one anomaly configuration item.

2. The method according to claim 1, characterized in that, The step of obtaining the attribution window for the anomaly to be attributed based on the historical runtime data of the target application includes: In the case where the anomaly to be attributed is a data fluctuation type anomaly, the anomaly index of the anomaly to be attributed is obtained in each statistical period based on the historical running data of the target application. If the increase of the abnormal indicator for a first number of consecutive statistical periods is greater than the first threshold or the decrease of the abnormal indicator for a second number of consecutive statistical periods is greater than the second threshold, then the starting point of the first number of consecutive statistical periods or the second number of consecutive statistical periods is determined as the moment when the anomaly to be attributed begins to appear. The attribution window for the anomaly to be attributed is determined based on the time at which the anomaly to be attributed first appears and the preset duration.

3. The method according to claim 1, characterized in that, The step of obtaining the attribution window for the anomaly to be attributed based on the historical runtime data of the target application includes: In the case that the anomaly to be attributed is a crash-type anomaly, the frequency of occurrence of the anomaly to be attributed within each statistical period is obtained based on the historical running data of the target application. If the frequency of occurrence of the anomaly to be attributed is greater than the threshold number within a third consecutive number of statistical periods, then the starting point of the third consecutive number of statistical periods is determined as the time when the anomaly to be attributed begins to appear. The attribution window for the anomaly to be attributed is determined based on the time at which the anomaly to be attributed first appears and the preset duration.

4. The method according to claim 1, characterized in that, The step of determining the anomalous version of the target application based on the runtime data of each version of the target application within the attribution window includes: Based on the historical operating data, obtain the fluctuation information of the abnormal indicators of the anomalies to be attributed to each version of the target application. Obtain full-version fluctuation information of the abnormal indicators in the historical operating data; Identify candidate versions in which the fluctuation information of the anomaly indicator of the anomaly to be attributed in each version of the target application matches the fluctuation information of the entire version. The base version among the candidate versions is the abnormal version.

5. The method according to claim 1, characterized in that, The step of obtaining the set of configuration items based on the abnormal version includes: Obtain the various development requirements for the aforementioned abnormal version; Based on the correlation between the code corresponding to each development requirement and the anomaly to be attributed, at least one suspicious development requirement is identified. The configuration item set is generated based on at least one suspected development requirement.

6. The method according to claim 1, characterized in that, The step of screening the configuration items in the configuration item set to identify at least one abnormal configuration item includes: Obtain first fluctuation information and second fluctuation information corresponding to the target configuration item; the target configuration item is any one of the at least one abnormal configuration item, the first fluctuation information is the fluctuation information of the abnormal indicator of the anomaly to be attributed in the historical running data generated by the target application with the target configuration item applied; the second fluctuation information is the fluctuation information of the abnormal indicator of the anomaly to be attributed in the historical running data generated by the target application without the target configuration item applied. Based on the first fluctuation information and the second fluctuation information, determine whether the target configuration item is an abnormal configuration item.

7. The method according to claim 6, characterized in that, The step of determining whether the target configuration item is an abnormal configuration item based on the first fluctuation information and the second fluctuation information includes: If the first fluctuation information matches the full version fluctuation information of the abnormal indicator in the historical operation data, and the second fluctuation information does not match the full version fluctuation information, then the target configuration item is determined to be an abnormal configuration item. If both the first fluctuation information and the second fluctuation information are consistent with the full version fluctuation information, then the target configuration item is determined not to be an abnormal configuration item.

8. The method according to any one of claims 1-7, characterized in that, Before generating an anomaly attribution report for the anomaly to be attributed based on the at least one anomaly configuration item, the method further includes: Obtain auxiliary features of the anomaly to be attributed; the auxiliary features include at least one of the following: the system type of the device running the target application, the model of the device running the target application, the operating region of the target application, and the distribution channel of the target application; The step of generating the anomaly attribution report for the anomaly to be attributed based on the at least one anomaly configuration item includes: The anomaly attribution report is generated based on the at least one anomaly configuration item and the auxiliary feature.

9. An anomaly attribution device for an application, characterized in that, include: The acquisition unit is used to acquire the attribution window of the anomaly to be attributed based on the historical running data of the target application; The attribution window is a time period centered on the moment when the anomaly to be attributed first appears and with a preset duration. The determining unit is configured to determine the abnormal version of the target application based on the runtime data of each version of the target application within the attribution window; A processing unit is configured to obtain a set of configuration items based on the abnormal version, the set of configuration items including at least one configuration item introduced by the abnormal version; A filtering unit is used to screen the configuration items in the configuration item set to identify at least one abnormal configuration item; A generation unit is configured to generate an anomaly attribution report for the anomaly to be attributed based on the at least one anomaly configuration item.

10. An electronic device, characterized in that, include: A memory and a processor, the memory being used to store a computer program and the processor being used to cause the electronic device to implement the exception attribution method of the application program according to any one of claims 1-8 when executing the computer program.

11. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a computing device, causes the computing device to implement the exception attribution method of the application program according to any one of claims 1-8.

12. A computer program product, characterized in that, When the computer program product is run on a computer, the computer enables the application's exception attribution method as described in any one of claims 1-8.