System and method for automatic root cause detection
First Claim
1. A method, comprising:
- obtaining, with one or more processors, a history of performance of an application, wherein;
the history of performance comprises a plurality of historical transaction records corresponding to a plurality of transactions serviced by the application responsive to respective requests received at an entry point of the application,respective historical transaction records identify a plurality of components of the application accessed to service a respective transaction among the plurality of transactions,respective historical transaction records include a plurality of attributes of operation of respective components among the plurality of components of the application accessed to service the respective transaction, andthe attributes include, for at least some components in at least some transactions, a respective response time of the respective component in the respective transaction;
after obtaining the history of performance, receiving, with one or more processors, an error of the application occurring in a first component of the application during an executed transaction that is servicing a request;
obtaining, with one or more processors, an executed transaction record of the executed transaction associated with the error, the executed transaction record identifying a plurality of components of the application accessed to service the executed transaction;
selecting, with one or more processors, a subset of the historical transaction records at least in part by comparing at least part of the historical transaction records to at least part of the executed transaction record and determining that at least some request parameters and that at least some application components match between the executed transaction record and the subset of historical transaction records, the subset of the historical transaction records including a plurality of historical transaction records;
determining, with one or more processors, that a value of an attribute of the executed transaction record is inconsistent with values of the attribute in the selected subset of historical transaction records, the attribute being associated with a second component of the application, wherein determining that the value of the attribute of the executed transaction record is inconsistent with values of the attribute in the selected subset of historical transaction records comprises comparing a response time of the second component during the executed transaction associated with the error to a threshold response time, the response time of the second component being a portion attributable to the second component of a response time of the request serviced by the executed transaction associated with the error; and
in response to the determination, designating, with one or more processors, in memory, the second component as a potentially associated with a root cause of the error.
1 Assignment
0 Petitions
Accused Products
Abstract
A system, method, and computer-readable storage medium are provided to automatically detect a root cause for an error that occurred during execution of functionality in a system. When a request is executed, a log associated with the execution of the request may be stored at the storage. The log may include information associated with a component associated with the execution of the request. Logs related to the same type of request may be compared with the executed request. Specifically, information associated with a component of the executed request may be compared with information associated with a component of the identified stored requests. When information associated with a component of the executed request does not match information associated with a component of the identified stored requests, a root cause for an error is associated with the associated component of the executed request.
34 Citations
26 Claims
-
1. A method, comprising:
-
obtaining, with one or more processors, a history of performance of an application, wherein; the history of performance comprises a plurality of historical transaction records corresponding to a plurality of transactions serviced by the application responsive to respective requests received at an entry point of the application, respective historical transaction records identify a plurality of components of the application accessed to service a respective transaction among the plurality of transactions, respective historical transaction records include a plurality of attributes of operation of respective components among the plurality of components of the application accessed to service the respective transaction, and the attributes include, for at least some components in at least some transactions, a respective response time of the respective component in the respective transaction; after obtaining the history of performance, receiving, with one or more processors, an error of the application occurring in a first component of the application during an executed transaction that is servicing a request; obtaining, with one or more processors, an executed transaction record of the executed transaction associated with the error, the executed transaction record identifying a plurality of components of the application accessed to service the executed transaction; selecting, with one or more processors, a subset of the historical transaction records at least in part by comparing at least part of the historical transaction records to at least part of the executed transaction record and determining that at least some request parameters and that at least some application components match between the executed transaction record and the subset of historical transaction records, the subset of the historical transaction records including a plurality of historical transaction records; determining, with one or more processors, that a value of an attribute of the executed transaction record is inconsistent with values of the attribute in the selected subset of historical transaction records, the attribute being associated with a second component of the application, wherein determining that the value of the attribute of the executed transaction record is inconsistent with values of the attribute in the selected subset of historical transaction records comprises comparing a response time of the second component during the executed transaction associated with the error to a threshold response time, the response time of the second component being a portion attributable to the second component of a response time of the request serviced by the executed transaction associated with the error; and in response to the determination, designating, with one or more processors, in memory, the second component as a potentially associated with a root cause of the error. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A tangible, non-transitory, machine-readable medium storing instructions that when executed by one or more processors effectuate operations comprising:
-
obtaining, with one or more processors, a history of performance of an application, wherein; the history of performance comprises a plurality of historical transaction records corresponding to a plurality of transactions serviced by the application responsive to respective requests received at an entry point of the application, respective historical transaction records identify a plurality of components of the application accessed to service a respective transaction among the plurality of transactions, respective historical transaction records include a plurality of attributes of operation of respective components among the plurality of components of the application accessed to service the respective transaction, and the attributes include, for at least some components in at least some transactions, a respective response time of the respective component in the respective transaction; after obtaining the history of performance, receiving, with one or more processors, an error of the application occurring in a first component of the application during an executed transaction that is servicing a request; obtaining, with one or more processors, an executed transaction record of the executed transaction associated with the error, the executed transaction record identifying a plurality of components of the application accessed to service the executed transaction; selecting, with one or more processors, a subset of the historical transaction records at least in part by comparing at least part of the historical transaction records to at least part of the executed transaction record and determining that at least some request parameters and that at least some application components match between the executed transaction record and the subset of historical transaction records, the subset of the historical transaction records including a plurality of historical transaction records; determining, with one or more processors, that a value of an attribute of the executed transaction record is inconsistent with values of the attribute in the selected subset of historical transaction records, the attribute being associated with a second component of the application, wherein determining that the value of the attribute of the executed transaction record is inconsistent with values of the attribute in the selected subset of historical transaction records comprises comparing a response time of the second component during the executed transaction associated with the error to a threshold response time, the response time of the second component being a portion attributable to the second component of a response time of the request serviced by the executed transaction associated with the error; and in response to the determination, designating, with one or more processors, in memory, the second component as a potentially associated with a root cause of the error. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
Specification