IP Library Granted Patent US 7,797,415
Granted Patent B2
US 7,797,415 · App. 12/111,619 · Granted Sep 14, 2010

Automatic context-based baselining for transactions

Assignee: Computer Associates Think, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,797,415
App. No.
12/111,619
Granted
Sep 14, 2010
Kind
B2
Abstract

Application health is determined by calculating baseline deviation for one or more transactions based on past data having the same context as current data being examined. The performance data is generated in response to monitoring one or more applications that perform transactions during a time period. The performance data may include transaction metric data and the context data describing conditions under which one or more transactions were performed. A baseline is determined by predicting current or recent transaction performance data values using past transaction performance data associated with the same context. Based on the comparison of the actual and predicted data with the same or similar context, a deviation from the baseline value is determined for the transaction and reported, for example to a user through an interface.

Claims (52)

1. A computer implemented method for monitoring a transaction, comprising:

accessing performance data generated from monitoring an application and associated with a transaction type, transactions associated with the transaction type performed to process requests transmitted to the application;

determining a first context for a portion of the performance data associated with the transaction type, the first context for each portion of performance data associated with a selected time period during which the transactions associated with the transaction type were performed, the first context including one or more parameters each having a parameter value that falls into one of a plurality of ranges;

predicting a performance value for the accessed performance data using prior performance data, the prior performance data associated with the same transaction type and having a second context for the transaction type, the second context including the one or more parameters each having a parameter value that falls into one of the plurality of ranges, each of the one or more parameters for the second context falling into the same range as the corresponding parameter for the first context, the second context associated with a previous time period than the time period associated with the first context;

identifying a deviation between the accessed performance data and the predicted performance values for the performance data;

reporting baseline deviation information derived from the deviation.

2. The computer implemented method of claim 1 , wherein the performance data includes response time data for each of the one or more transactions.

3. The computer implemented method of claim 1 , wherein the performance data includes data for each transaction for the selected time period.

4. The computer implemented method of claim 1 , wherein the first and second context each include two or more parameters.

5. The computer implemented method of claim 1 , wherein the context parameters include two or more of error rate, concurrency and throughput.

6. The computer implemented method of claim 1 , wherein the plurality of ranges include a high range, a medium range and a low range.

7. The computer implemented method of claim 1 , wherein said step of predicting a value includes:

fitting one or more functions to the prior performance data; and

calculating a value for accessed performance data using the fitted one or more functions.

8. One or more processor readable storage devices having processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising:

generating performance data for transactions performed by an application being monitored;

determining a first context for the transactions, the first context associated with a first time period, the first context includes one or more parameters each having a parameter value that falls into one of a plurality of ranges;

predicting a performance value for the performance data using prior performance data, the prior performance data associated with a second context that includes the one or more parameters each having a parameter value that falls into one of the plurality of ranges, each of the one or more parameters for the second context falling into the same range as the corresponding parameter for the first context, the second context associated with a previous time period than the time period associated with the first context;

comparing the generated performance data to the predicted performance values for the performance data;

providing health information for the transactions, the health information based on said step of comparing.

9. The one or more processor readable storage devices of claim 8 , wherein the performance data is generated in response to monitoring an application by code inserted into the application.

10. The one or more processor readable storage devices of claim 8 , wherein said step of generating performance data includes:

inserting monitoring code into the application by bytecode instrumentation; and

generating the performance data using the monitoring code.

11. The one or more processor readable storage devices of claim 8 , wherein said step of generating performance data includes:

monitoring the application while the application is performing the transactions; and

generating the performance data in response to monitoring the application.

12. The one or more processor readable storage devices of claim 8 , wherein the context parameters for the transactions includes at least one of error rate, concurrency and throughput.

13. The one or more processor readable storage devices of claim 8 , wherein said step of predicting includes:

identifying a time window associated with a period of time occurring before the first time period;

selecting a set of performance data generated during the time window and for which each of the one or more parameters falls into the same range as the corresponding parameter for the first context; and

computing a predicted value for a first data point using a selected function and the selected set of performance data generated during the time window.

14. The one or more processor readable storage devices of claim 8 , wherein the health information indicates one of two or more levels of health for the transactions performed by the application.

15. The one or more processor readable storage devices of claim 8 , wherein said method further comprises reporting an alert if the health information for one or more transactions is abnormal.

16. A computer implemented method for monitoring an application, comprising:

creating performance data for two or more transaction types performed by an application;

determining a first context associated with each of the two or more transaction types for a period of time, the first context includes one or more parameters each having a parameter value that falls into one of a plurality of ranges;

predicting a performance value for the performance data associated with a first transaction type of the two or more transaction types and the first context, the performance value predicted using data associated with a second context that includes the one or more parameters each having a parameter value that falls into one of the plurality of ranges, each of the one or more parameters for the second context falling into the same range as the corresponding parameter for the first context, the second context associated with a previous time period than the time period associated with the first context;

determining baseline deviation information for the performance data based on the predicted values and the created performance data associated with the first context; and

reporting the baseline deviation information to a user.

17. The computer implemented method of claim 16 , wherein the performance data is generated from data reported by code inserted into an application.

18. The computer implemented method of claim 16 , wherein a context for a first transaction occurring during the period of time is different than the context for a second transaction occurring during the same period of time.

19. The computer implemented method of claim 16 , wherein the one or more parameters include error rate, concurrency, and throughput, each parameter having a value that falls into a range of low, medium or high.

20. The computer implemented method of claim 16 , wherein said step of predicting a value for the performance data includes:

accessing a set of performance data associated with a first transaction type of the two or more transaction types;

fitting the set of accessed performance data to one or more functions; and

predicting a value for the created performance data using the one or more fitted functions.

21. An apparatus for processing data, comprising:

a communication interface;

a storage device; and

one or more processors in communication with said storage device, and said communication interface, said one or more processors perform transactions, determine a first context for each of the transactions, determine baseline deviation information for the transactions, and report the baseline deviation information, the first context associated with a transaction and a first time period, the first context includes one or more parameters each having a parameter value that falls into one of a plurality of ranges, the baseline deviation information indicating whether an actual value for performance data generated in response to monitoring the transactions differs from a predicted value for the performance data, the predicted values are based on performance data for transactions that have a second context that includes the one or more parameters each having a parameter value that falls into one of the plurality of ranges, each of the one or more parameters for the second context falling into the same range as the corresponding parameter for the first context, the second context associated with a time period prior to the first time period.

22. The apparatus of claim 21 , wherein the one or more processors generate the performance data based on monitoring an application which performs the transactions.

Assignments (2)
MERGER Recorded Apr 15, 2012
From: COMPUTER ASSOCIATES THINK, INC.
To: CA, INC.
Reel/Frame 028047/0913 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2008
From: PERACHA, ZAHUR
To: COMPUTER ASSOCIATES THINK, INC.
Reel/Frame 021042/0906 →
Continuity (1)
Related Publication 20090271511A1 · Oct 29, 2009