Execution flow shape compression for aggregate data reporting in an application manager
First Claim
1. A computer-implemented method for monitoring execution flows, comprising:
- observing a plurality of execution flows at one or more computer systems;
compressing data representing at least one of the execution flows; and
defining a plurality of execution flow shapes based on the observing and the compressing.
3 Assignments
0 Petitions
Accused Products
Abstract
Data relating to execution flows at a computer system is compressed and aggregated across multiple execution flows by categorizing each execution flow into an execution flow shape. The execution flows may represent sequences of software components that are invoked. The execution flow shapes are developed by observing the execution flows at the computer system and applying lossy compression rules, such as representing multiple iterations of a loop as a single iteration, skipping certain types of software components, such as those having a specified call stack depth, treating some of the software components as being optional, and ignoring recursive calls by the software components. The aggregation and compression allow the information from all execution flows to be combined into a small enough data set that can be reported without consuming unduly large processing overhead while still preserving as many of the interesting aspects of the execution flows as possible.
-
Citations
45 Claims
-
1. A computer-implemented method for monitoring execution flows, comprising:
-
observing a plurality of execution flows at one or more computer systems;
compressing data representing at least one of the execution flows; and
defining a plurality of execution flow shapes based on the observing and the compressing. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A computer-implemented method for monitoring execution flows, comprising:
-
observing a sequence of software components which are invoked for an execution flow at a computer system;
choosing different ones of the software components as potential loop start components, and testing whether the chosen software components are actually loop start components, to identify loops in the sequence of software components; and
for each identified loop, collapsing multiple iterations to a single iteration. - View Dependent Claims (17, 18, 19)
-
-
20. An apparatus for monitoring execution flows, comprising:
-
at least one storage device; and
at least one processor in communication with the at least one storage device, the at least one processor performing a method comprising;
observing a plurality of execution flows at one or more computer systems;
compressing data representing at least one of the execution flows; and
defining a plurality of execution flow shapes based on the observing and the compressing. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. At least one processor readable storage device having processor readable code embodied thereon for programming at least one processor to perform a method for monitoring execution flows, the method comprising:
-
observing a plurality of execution flows at one or more computer systems;
compressing data representing at least one of the execution flows; and
defining a plurality of execution flow shapes based on the observing and the compressing. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45)
-
Specification