IP Library Granted Patent US 9,338,255
Granted Patent B1
US 9,338,255 · App. 13/826,733 · Granted May 10, 2016

System and method for correlating end-user experience data and backend-performance data

Inventors: Douglas Doe (Toronto, CA); Joseph Rustad (Toronto, CA); Robert A. Dickinson (Boulder, CO); Xiangrui Wang (Burlington, CA); Christine Feldmann (Mississauga, CA); Daniel Ivanisevic (Toronto, CA)
Assignee: Dell Software Inc.
H04L67/42
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 9,338,255
App. No.
13/826,733
Granted
May 10, 2016
Kind
B1
Abstract

In one embodiment, a method includes operating at least one distributed software application. The method further includes receiving a web request from an end-user information handling system in connection with the at least one distributed software application. Further, the method includes generating a transaction identifier for the transaction. Moreover, the method includes processing the transaction. The processing includes generating backend-performance data indexed by the transaction identifier. Additionally, the method includes injecting the transaction identifier into a web response to the web request. Also, the method includes transmitting the web response to the end-user information handling system along a transmission path. In addition, the method includes, at a node along the transmission path, passively observing the response and generating end-user experience data therefrom.

Claims (73)

1. A method comprising:

on a backend-computing system, operating at least one distributed software application;

wherein the backend-computing system comprises at least one web server and at least one application server;

the at least one web server receiving a web request from an end-user information handling system in connection with the at least one distributed software application;

the at least one web server forwarding the web request to the at least one application server;

the at least one application server generating a transaction identifier for a transaction initiated by the web request;

the backend-computing system processing the transaction, the processing comprising generating backend-performance data indexed by the transaction identifier;

the at least one application server, via a monitoring agent resident thereon, injecting the transaction identifier into a web response to the web request, the injecting yielding an identifier-injected web response comprising the web response and the transaction identifier;

the at least one application server transmitting the identifier-injected web response to the end-user information handling system along a transmission path, the transmission path comprising the at least one web server and the end-user information handling system; and

at a node along the transmission path, passively observing the identifier-injected web response and generating end-user experience data therefrom, the end-user experience data being indexed by the transaction identifier.

2. The method of claim 1 , comprising:

storing the end-user experience data by transaction identifier on an end-user archive system; and

storing the backend-performance data by transaction identifier on a monitoring system.

3. The method of claim 2 , comprising:

correlating the end-user experience data and the backend-performance data by the transaction identifier to yield correlated data; and

storing the correlated data in at least one database.

4. The method of claim 3 , comprising aggregating the correlated data by transaction identifier for a plurality of transactions.

5. The method of claim 3 , wherein the end-user experience data comprises content of the identifier-injected web response.

6. The method of claim 5 , comprising:

receiving a request to aggregate end-user transactions by specified content;

searching the at least one database for the specified content;

responsive to the searching, identifying by transaction identifier any end-user transactions involving the specified content;

aggregating correlated data for the identified transactions; and

providing the aggregated correlated data to a requestor.

7. The method of claim 5 , wherein the end-user experience data comprises all content of a same web page to which the identifier-injected web response corresponds.

8. An information handling system comprising at least one web server and at least one application server, wherein the information handling system includes computer hardware operable to implement a method comprising:

operating at least one distributed software application;

the at least one web server receiving a web request from an end-user information handling system in connection with the at least one distributed software application;

the at least one web server forwarding the web request to the at least one application server;

the at least one application server generating a transaction identifier for a transaction initiated by the web request;

processing the transaction, the processing comprising generating backend-performance data indexed by the transaction identifier;

the at least one application server, via a monitoring agent resident thereon, injecting the transaction identifier into a web response to the web request, the injecting yielding an identifier-injected web response comprising the web response and the transaction identifier;

the at least one application server transmitting the identifier-injected web response to the end-user information handling system along a transmission path, the transmission path comprising the at least one web server and the end-user information handling system; and

at a node along the transmission path, passively observing the identifier-injected response and generating end-user experience data therefrom, the end-user experience data being indexed by the transaction identifier.

9. The information handling system of claim 8 , the method comprising:

storing the end-user experience data by transaction identifier on an end-user archive system; and

storing the backend-performance data by transaction identifier on a monitoring system.

10. The information handling system of claim 9 , the method comprising:

correlating the end-user experience data and the backend-performance data by the transaction identifier to yield correlated data; and

storing the correlated data in at least one database.

11. The information handling system of claim 10 , the method comprising aggregating the correlated data by transaction identifier for a plurality of transactions.

12. The information handling system of claim 10 , wherein the end-user experience data comprises content of the identifier-injected web response.

13. The information handling system of claim 12 , the method comprising:

receiving a request to aggregate end-user transactions by specified content;

searching the at least one database for the specified content;

responsive to the searching, identifying by transaction identifier any end-user transactions involving the specified content;

aggregating correlated data for the identified transactions; and

providing the aggregated correlated data to a requestor.

14. The information handling system of claim 11 , wherein the end-user experience data comprises all content of a same web page to which the identifier-injected web response corresponds.

15. 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:

on a backend-computing system, operating at least one distributed software application;

wherein the backend-computing system comprises at least one web server and at least one application server;

the at least one web server receiving a web request from an end-user information handling system in connection with the at least one distributed software application;

the at least one web server forwarding the web request to the at least one application server;

the at least one application server generating a transaction identifier for a transaction initiated by the web request;

the backend-computing system processing the transaction, the processing comprising generating backend-performance data indexed by the transaction identifier;

the at least one application server, via a monitoring agent resident thereon, injecting the transaction identifier into a web response to the web request, the injecting yielding an identifier-injected web response comprising the web response and the transaction identifier;

the at least one application server transmitting the identifier-injected web response to the end-user information handling system along a transmission path, the transmission path comprising the at least one web server and the end-user information handling system; and

at a node along the transmission path, passively observing the identifier-injected web response and generating end-user experience data therefrom, the end-user experience data being indexed by the transaction identifier.

16. The computer-program product of claim 15 , the method comprising:

storing the end-user experience data by transaction identifier on an end-user archive system; and

storing the backend-performance data by transaction identifier on a monitoring system.

17. The computer-program product of claim 16 , the method comprising:

correlating the end-user experience data and the backend-performance data by the transaction identifier to yield correlated data; and

storing the correlated data in at least one database.

18. The computer-program product of claim 17 , the method comprising aggregating the correlated data by transaction identifier for a plurality of transactions.

19. The computer-program product of claim 17 , wherein the end-user experience data comprises content of the identifier-injected web response.

20. The computer-program product of claim 17 , the method comprising:

receiving a request to aggregate end-user transactions by specified content;

searching the at least one database for the specified content;

responsive to the searching, identifying by transaction identifier any end-user transactions involving the specified content;

aggregating correlated data for the identified transactions; and

providing the aggregated correlated data to a requestor.

Assignments (23)
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 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 →
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 →
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 →
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 →
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 044800/0848 →
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 SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040040/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0618 →
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 SECURITY INTEREST Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLANT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0216 →
PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 031899/0261 →
PATENT SECURITY AGREEMENT (ABL) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 031898/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jan 2, 2014
From: APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 031897/0348 →
CHANGE OF NAME Recorded Aug 19, 2013
From: QUEST SOFTWARE, INC.
To: DELL SOFTWARE INC.
Reel/Frame 031035/0914 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 28, 2013
From: DOE, DOUGLAS; RUSTAD, JOSEPH; DICKINSON, ROBERT A.; WANG, XIANGRUI; FELDMANN, CHRISTINE; IVANISEVIC, DANIEL
To: QUEST SOFTWARE, INC.
Reel/Frame 030107/0078 →