IP Library Granted Patent US 11,005,738
Granted Patent B1
US 11,005,738 · App. 14/249,147 · Granted May 11, 2021

System and method for end-to-end response-time analysis

Inventors: Joseph Rustad (Toronto, CA); Naomi B. Bower (Toronto, CA); Hsing-Yu Chen (Mississauga, CA)
Assignee: QUEST SOFTWARE INC.
H04L43/067G06F11/3419G06F11/3495
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 11,005,738
App. No.
14/249,147
Granted
May 11, 2021
Kind
B1
Abstract

In one embodiment, a method includes selecting a group of transactions having a common end-to-end transaction path comprising a plurality of transaction-path nodes. Each transaction of the group is associated with either an acceptable category or an unacceptable category based, at least in part, on an end-to-end response time for the transaction. The method further includes separately determining, for each transaction-path node, an execution-time pair. The execution-time pair includes first aggregate information indicative of execution time by the transaction-path node for transactions associated with the acceptable category. The execution-time pair also includes second aggregate information indicative of execution time by the transaction-path node for transactions associated with the unacceptable category. Additionally, the method includes generating a visualization of the end-to-end transaction path. The visualization depicts each determined execution-time pair in relation to a corresponding transaction-path node.

Claims (63)

1. A method comprising, by a computer system comprising physical computer hardware:

selecting a group of transactions having a common end-to-end transaction path comprising a plurality of transaction-path nodes;

wherein each transaction of the group is associated with either an acceptable category or an unacceptable category based, at least in part, on an end-to-end response time for the transaction;

separately determining, for each transaction-path node of the plurality of transaction-path nodes, an execution-time pair, the execution-time pair comprising:

first aggregate information indicative of aggregate execution time by the transaction-path node for the transactions of the group that are associated with the acceptable category; and

second aggregate information indicative of aggregate execution time by the transaction-path node for the transactions of the group that are associated with the unacceptable category;

generating a report of the end-to-end transaction path,

wherein the report indicates each determined execution-time pair in relation to a corresponding transaction-path node; and

causing the end-to-end transaction path to be displayed, wherein the causing comprises scaling a visualization of at least one determined execution-time pair to a greater of:

an aggregate execution-time value corresponding to transactions associated with the acceptable category; and

an aggregate execution-time value corresponding to transactions associated with the unacceptable category.

2. The method of claim 1 , wherein:

the report comprises a visualization of the end-to-end transaction path; and

wherein the visualization depicts each determined execution-time pair in relation to a corresponding transaction-path node.

3. The method of claim 1 , wherein the plurality of transaction-path nodes comprise a plurality of tiers.

4. The method of claim 1 , comprising, prior to the selecting, for each transaction of a plurality of transactions, associating the transaction with either the acceptable category or the unacceptable category.

5. The method of claim 1 , wherein the separately determining comprises:

ascertaining a category of each transaction of the group;

accessing a response-time breakdown for each transaction of the group;

for each transaction-path node, aggregating corresponding execution times for the transactions associated with the acceptable category; and

for each transaction-path node, aggregating corresponding execution times for the transactions associated with the unacceptable category.

6. The method of claim 1 , wherein the group comprises end-user transactions.

7. The method of claim 6 , wherein the plurality of transaction-path nodes comprise an end-user client application, a network, at least one web server, at least one application server, at least one database, and at least one external service.

8. The method of claim 1 , wherein:

the group comprises a plurality of database-query executions; and

the plurality of transaction-path nodes comprise a plurality of sources of delay in the plurality of database-query executions.

9. An information handling system comprising:

a hardware computer processor, wherein the hardware computer processor is operable to implement a method, the method comprising:

selecting a group of transactions having a common end-to-end transaction path comprising a plurality of transaction-path nodes;

wherein each transaction of the group is associated with either an acceptable category or an unacceptable category based, at least in part, on an end-to-end response time for the transaction;

separately determining, for each transaction-path node of the plurality of transaction-path nodes, an execution-time pair, the execution-time pair comprising:

first aggregate information indicative of aggregate execution time by the transaction-path node for the transactions of the group that are associated with the acceptable category; and

second aggregate information indicative of execution time by the transaction-path node for the transactions of the group that are associated with the unacceptable category;

generating a report of the end-to-end transaction path,

wherein the report indicates each determined execution-time pair in relation to a corresponding transaction-path node; and

causing the end-to-end transaction path to be displayed, wherein the causing comprises scaling a visualization of at least one determined execution-time pair to a greater of:

an aggregate execution-time value corresponding to transactions associated with the acceptable cateogry; and

an aggregate execution-time value corresponding to transactions associated with the unacceptable category.

10. The information handling system of claim 9 , wherein:

the report comprises a visualization of the end-to-end transaction path; and

wherein the visualization depicts each determined execution-time pair in relation to a corresponding transaction-path node.

11. The information handling system of claim 9 , the method comprising, prior to the selecting, for each transaction of a plurality of transactions, associating the transaction with either the acceptable category or the unacceptable category.

12. The information handling system of claim 9 , wherein the separately determining comprises:

ascertaining a category of each transaction of the group;

accessing a response-time breakdown for each transaction of the group;

for each transaction-path node, aggregating corresponding execution times for the transactions associated with the acceptable category; and

for each transaction-path node, aggregating corresponding execution times for the transactions associated with the unacceptable category.

13. The information handling system of claim 9 , wherein the group comprises end-user transactions.

14. The information handling system of claim 13 , wherein the plurality of transaction-path nodes comprise an end-user client application, a network, at least one web server, at least one application server, at least one database, and at least one external service.

15. The information handling system of claim 9 , wherein:

the group comprises a plurality of database-query executions; and

the plurality of transaction-path nodes comprise a plurality of sources of delay in the plurality of database-query executions.

16. A computer-program product comprising a non-transitory computer-usable medium having computer-readable program code embodied therein, the computer-readable program code adapted to be executed to implement a method comprising:

selecting a group of transactions having a common end-to-end transaction path comprising a plurality of transaction-path nodes;

wherein each transaction of the group is associated with either an acceptable category or an unacceptable category based, at least in part, on an end-to-end response time for the transaction;

separately determining, for each transaction-path node of the plurality of transaction-path nodes, an execution-time pair, the execution-time pair comprising:

first aggregate information indicative of aggregate execution time by the transaction-path node for the transactions of the group that are associated with the acceptable category; and

second aggregate information indicative of aggregate execution time by the transaction-path node for the transactions of the group that are associated with the unacceptable category;

generating a report of the end-to-end transaction path,

wherein the report indicates each determined execution-time pair in relation to a corresponding transaction-path node; and

causing the end-to-end transaction to be displayed, wherein the causing comprises scaling a visualization of at least one determined execution-time pair to a greater of:

an aggregate execution-time value corresponding to transactions associated with the acceptable category; and

an aggregate execution-time value corresponding to transactions associated with the unacceptable category.

Assignments (26)
RELEASE OF SECURITY INTEREST Recorded Nov 19, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.
Reel/Frame 073606/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 18, 2025
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.
Reel/Frame 073613/0326 →
SECURITY INTEREST Recorded Jun 8, 2025
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; ERWIN, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 071527/0649 →
SECURITY INTEREST Recorded Jun 8, 2025
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; ERWIN, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 071527/0001 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS Recorded Feb 2, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.
Reel/Frame 059105/0479 →
FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 2, 2022
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.; ONE IDENTITY LLC; ONELOGIN, INC.; ONE IDENTITY SOFTWARE INTERNATIONAL DESIGNATED ACTIVITY COMPANY
To: GOLDMAN SACHS BANK USA
Reel/Frame 058945/0778 →
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 2, 2022
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.; ONE IDENTITY LLC; ONELOGIN, INC.; ONE IDENTITY SOFTWARE INTERNATIONAL DESIGNATED ACTIVITY COMPANY
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 058952/0279 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS Recorded Feb 2, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.
Reel/Frame 059096/0683 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: QUEST SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046327/0347 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: QUEST SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046327/0486 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS RECORDED AT R/F 040581/0850 Recorded May 22, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 046211/0735 →
CHANGE OF NAME Recorded Dec 6, 2017
From: DELL SOFTWARE INC.
To: QUEST SOFTWARE INC.
Reel/Frame 044719/0565 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 040587 FRAME: 0624. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 28, 2017
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 044811/0598 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Nov 10, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040587/0624 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Nov 9, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040581/0850 →
RELEASE OF SECURITY INTEREST Recorded Oct 31, 2016
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0467 →
RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040039/0642) Recorded Oct 31, 2016
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0016 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040030/0187 →
RELEASE OF REEL 033625 FRAME 0748 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.; SECUREWORKS, INC.
Reel/Frame 040027/0050 →
RELEASE OF REEL 033625 FRAME 0688 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.; SECUREWORKS, INC.
Reel/Frame 040027/0757 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040039/0642 →
RELEASE OF REEL 033625 FRAME 0711 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.; SECUREWORKS, INC.
Reel/Frame 040016/0903 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded Aug 27, 2014
From: COMPELLENT TECHNOLOGIES, INC.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; SECUREWORKS, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 033625/0748 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded Aug 27, 2014
From: COMPELLENT TECHNOLOGIES, INC.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; SECUREWORKS, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 033625/0711 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Aug 27, 2014
From: COMPELLENT TECHNOLOGIES, INC.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; SECUREWORKS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 033625/0688 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2014
From: RUSTAD, JOSEPH; BOWER, NAOMI B.; CHEN, HSING-YU
To: DELL SOFTWARE INC.
Reel/Frame 032652/0317 →