IP Library Granted Patent US 8,589,537
Granted Patent B2
US 8,589,537 · App. 12/887,942 · Granted Nov 19, 2013

Methods and computer program products for aggregating network application performance metrics by process pool

Inventors: Jeffrey Robert King (Bloomington, IN); Patrick A. Reynolds (Chapel Hill, NC); David William Irwin (Cary, NC)
Assignee: Blue Stripe Software, 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 8,589,537
App. No.
12/887,942
Granted
Nov 19, 2013
Kind
B2
Abstract

Provided are methods and computer program products for aggregating and reporting network application performance metrics by process pool. Methods may include mapping ones of a plurality of processes into one of at least one process pool; and aggregating, for each of the process pools, performance metrics generated for each of the plurality of processes mapped into that process pool.

Claims (55)

1. A method for monitoring application performance in a networked device, the method comprising:

collecting performance data corresponding to respective ones of a plurality of processes executing on the networked device;

mapping ones of the plurality of processes into ones of a plurality of process pools;

generating performance metrics for respective ones of the plurality of processes based on the collected performance data;

aggregating, for respective ones of the plurality of process pools, performance metrics for the ones of the plurality of processes mapped into the respective ones of the plurality of process pools;

generating, for respective ones of the plurality of process pools, an event incorporating aggregated metrics;

defining a threshold number of process pools;

defining a degree of similarity; and

decreasing the degree of similarity responsive to a count of process pools into which at least one process is mapped reaching the threshold number of process pools;

wherein mapping ones of the plurality of processes into ones of the plurality of process pools comprises mapping a first plurality of processes into a first process pool, based on the first plurality of processes having operating system container identifiers, directory paths, or command line instructions within the degree of similarity,

wherein said collecting performance data, mapping the ones of the plurality of processes, generating performance metrics, aggregating performance metrics, and generating an event comprise operations performed using at least one programmed computer processor circuit.

2. A method for monitoring performance of a plurality of processes executing on a networked device, the method comprising:

mapping ones of the plurality of processes into one of at least one process pool;

aggregating, for a respective one of the at least one process pool, performance metrics generated for the ones of the plurality of processes mapped into the respective one of the at least one process pool and;

defining at least one process for which mapping is not to be performed;

wherein mapping ones of the plurality of processes into one of at least one process pool comprises mapping the ones of the plurality of processes excluding the at least one process,

wherein mapping ones of the plurality of processes and aggregating performance metrics comprise operations performed using at least one programmed computer processor circuit,

wherein the at least one process pool comprises a plurality of process pools, the method further comprising:

defining a threshold number of process pools; and

decreasing a degree of similarity responsive to a count of process pools into which at least one process is mapped reaching the threshold number of process pools.

3. A method according to claim 2 , the method further comprising

collecting performance data corresponding to respective ones of the plurality of processes executing on the networked device prior to mapping; and

generating, for a respective one of the at least one process pool, an event incorporating aggregated metrics;

wherein performance metrics generated for ones of the plurality of processes are based on collected performance data.

4. The method of claim 2 , wherein mapping ones of the plurality of processes into one of at least one process pool comprises mapping a first portion of the plurality of processes into a first process pool, based on the first portion of the plurality of processes having a matching operating system container identifier, directory path, or command line instructions.

5. The method of claim 2 , the method further comprising:

defining a degree of similarity;

wherein mapping ones of the plurality of processes into one of at least one process pool comprises mapping a first portion of the plurality of processes into a first process pool, based on the first portion of the plurality of processes having operating system container identifiers, directory paths, or command line instructions within the degree of similarity.

6. The method of claim 5 , wherein the degree of similarity comprises a maximum allowable Levenshtein distance.

7. The method of claim 2 , wherein the degree of similarity comprises a maximum allowable Levenshtein distance, and

wherein decreasing the degree of similarity comprises increasing the maximum allowable Levenshtein distance.

8. The method of claim 2 , wherein the count of process pools comprises a count of concurrent process pools into which at least one process is mapped.

9. The method of claim 2 , wherein the count of process pools comprises a count of process pools into which at least one process is mapped during a specified time interval.

10. A computer program product comprising:

a non-transitory computer readable storage medium having computer readable program code embodied therein, the computer readable program code comprising:

computer readable program code configured to map ones of the plurality of processes into one of at least one process pool;

computer readable program code configured to aggregate, for a respective one of the at least one process pool, performance metrics generated for the ones of the plurality of processes mapped into the respective one of the at least one process pool; and

computer readable program code configured to define at least one other process for which mapping is not to be performed;

wherein computer readable program code configured to map ones of the plurality of processes into one of at least one process pool comprises computer readable program code configured to map the ones of the plurality of processes excluding the at least one process,

wherein the at least one process pool comprises a plurality of process pools, the computer readable program code further comprising:

computer readable program code configured to define a threshold number of process pools; and

computer readable program code configured to decrease a degree of similarity responsive to a count of process pools into which at least one process is mapped reaching the threshold number of process pools.

11. The computer program product of claim 10 , further comprising

computer readable program code configured to collect performance data corresponding to respective ones of the plurality of processes executing on the networked device prior to mapping; and

computer readable program code configured to generate, for a respective one of the at least one process pool, an event incorporating aggregated metrics;

wherein performance metrics generated for ones of the plurality of processes are based on collected performance data.

12. The computer program product of claim 10 , wherein computer readable program code configured to map ones of the plurality of processes into one of at least one process pool comprises computer readable program code configured to map a first portion of the plurality of processes into a first process pool, based on the first portion of the plurality of processes having a matching operating system container identifier, directory path, or command line instructions.

13. The computer program product of claim 10 , further comprising:

computer readable program code configured to define a degree of similarity;

wherein computer readable program code configured to map ones of the plurality of processes into one of at least one process pool comprises computer readable program code configured to map a first portion of the plurality of processes into a first process pool, based on the first portion of the plurality of processes having operating system container identifiers, directory paths, or command line instructions within the degree of similarity.

14. The computer program product of claim 13 , wherein the degree of similarity comprises a maximum allowable Levenshtein distance.

15. The computer program product of claim 10 , wherein the degree of similarity comprises a maximum allowable Levenshtein distance, and

wherein computer readable program code configured to decrease the degree of similarity comprises computer readable program code configured to increase the maximum allowable Levenshtein distance.

16. The computer program product of claim 10 , wherein the count of process pools comprises a count of concurrent process pools into which at least one process is mapped.

17. The computer program product of claim 10 , wherein the count of process pools comprises a count of process pools into which at least one process is mapped during a specified time interval.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2015
From: BLUE STRIPE SOFTWARE, INC.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 035966/0655 →
RELEASE OF SECURITY INTEREST Recorded Jun 19, 2015
From: SQUARE 1 BANK
To: BLUE STRIPE SOFTWARE, INC.
Reel/Frame 035869/0518 →
SECURITY INTEREST Recorded Oct 7, 2014
From: BLUE STRIPE SOFTWARE, INC.
To: SQUARE 1 BANK
Reel/Frame 033903/0255 →
RELEASE OF SECURITY INTEREST Recorded Oct 4, 2013
From: SQUARE 1 BANK
To: BLUE STRIPE SOFTWARE, INC.
Reel/Frame 031351/0639 →
SECURITY AGREEMENT Recorded Jul 29, 2013
From: BLUE STRIPE SOFTWARE, INC.
To: SQUARE 1 BANK
Reel/Frame 030919/0136 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 7, 2011
From: KING, JEFFREY ROBERT; REYNOLDS, PATRICK A.; IRWIN, DAVID WILLIAM
To: BLUE STRIPE SOFTWARE, INC.
Reel/Frame 025600/0691 →
Continuity (1)
Related Publication 20120072575A1 · Mar 22, 2012