IP Library Granted Patent US 9,015,315
Granted Patent B2
US 9,015,315 · App. 14/069,355 · Granted Apr 21, 2015

Identification and monitoring of distributed business transactions

Inventors: Jyoti Bansal (San Francisco, CA); Bhaskar Sunkara (San Francisco, CA)
Assignee: AppDynamics, Inc.
H04L67/10H04L43/50G06Q40/00H04L43/04H04L41/5038H04L41/5083
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,015,315
App. No.
14/069,355
Granted
Apr 21, 2015
Kind
B2
Abstract

The present technology monitors a web application provided by one or more services. A service may be provided by applications. The monitoring system provides end-to-end business transaction visibility, identifies performance issues quickly and has dynamical scaling capability across monitored systems including cloud systems, virtual systems and physical infrastructures. In instances, a request may be received from a remote application. The request may be associated with a distributed transaction. Data associated with the request may be detected. A distributed transaction identifier may be generated for a distributed transaction based on the data associated with the request.

Claims (48)

1. A method for identifying a transaction, comprising:

receiving a request from a remote application, the request associated with a distributed transaction;

detecting data associated with the request or code that will be executed by processing the request and associated with call chain data, the call chain data identifying a sequence of computers that have processed the particular request;

identifying a distributed transaction type based on the detected request data or code that will be executed by processing the request;

associating a distributed transaction identifier for the distributed transaction associated with the request based on the data associated with the request; and

associating one or more monitoring parameters with a local thread memory based on the identified transaction type, the monitoring parameters including an application identifier, the distributed transaction identifier, and the call chain data,

wherein the application identifier, distributed transaction identifier and the call chain data are added to an outgoing request associated with the thread, the distributed transaction including the outgoing request and the received request.

2. The method of claim 1 , wherein the data includes a uniform resource locator associated with the request, the distributed transaction identifier generated at least in part from the uniform resource locator.

3. The method of claim 1 , wherein the data includes a portion of the request, the distributed transaction identifier generated at least in part from the portion of the request.

4. The method of claim 1 , wherein the distributed transaction identifier associated with the request is stored in a table.

5. The method of claim 1 , further comprising:

receiving a subsequent request from the remote application;

detecting a second data associated with the request; and

retrieving the distributed transaction identifier associated with the second data from the table.

6. The method of claim 1 , further comprising storing the distributed transaction identifier associated with the request.

7. The method of claim 1 , wherein subsequent requests made across one or more servers and associated with the distributed transaction include the distributed transaction identifier.

8. The method of claim 1 , wherein a thread handling the request is associated with the distributed transaction identifier.

9. The method of claim 1 , wherein the distributed transaction identifier includes a distributed transaction name.

10. A non-transitory computer readable storage medium having embodied thereon a program, the program being executable by a processor to perform a method for identifying a transaction, the method comprising:

receiving a request from a remote application, the request associated with a distributed transaction;

detecting data associated with the request or code that will be executed by processing the request and associated with call chain data, the call chain data identifying a sequence of computers that have processed the particular request;

identifying a distributed transaction type based on the detected request data or code that will be executed by processing the request;

associating a distributed transaction identifier for the distributed transaction associated with the request based on the data associated with the request; and

associating one or more monitoring parameters with a local thread memory based on the identified transaction type, the monitoring parameters including an application identifier, the distributed transaction identifier, and the call chain data,

wherein the application identifier, distributed transaction identifier and the call chain data are added to an outgoing request associated with the thread, the distributed transaction including the outgoing request and the received request.

11. The non-transitory computer readable storage medium of claim 10 , wherein the data includes a uniform resource locator associated with the request, the distributed transaction identifier generated at least in part from the uniform resource locator.

12. The non-transitory computer readable storage medium of claim 10 , wherein the data includes a portion of the request, the distributed transaction identifier generated at least in part from the portion of the request.

13. The non-transitory computer readable storage medium of claim 10 , wherein the distributed transaction identifier associated with the request is stored in a table.

14. The non-transitory computer readable storage medium of claim 10 , the method further comprising:

receiving a subsequent request from the remote application;

detecting a second data associated with the request; and

retrieving the distributed transaction identifier associated with the second data from the table.

15. The non-transitory computer readable storage medium of claim 10 , the method further comprising storing the distributed transaction identifier associated with the request.

16. The non-transitory computer readable storage medium of claim 10 , wherein subsequent requests made across one or more servers and associated with the distributed transaction include the distributed transaction identifier.

17. The non-transitory computer readable storage medium of claim 10 , wherein a thread handling the request is associated with the distributed transaction identifier.

18. The non-transitory computer readable storage medium of claim 10 , wherein the distributed transaction identifier includes a distributed transaction name.

19. A system for identifying a transaction, the system comprising:

a processor;

memory; and

an agent stored in the memory and executable by the processor to receive a request from a remote application, the request associated with a distributed transaction, detect data associated with the request or code that will be executed by processing the request and associated with call chain data, the call chain data identifying a sequence of computers that have processed the particular request, identifying a distributed transaction type based on the detected request data or code that will be executed by processing the request, associate a distributed transaction identifier for the distributed transaction associated with the request based on the data associated with the request, and associate one or more monitoring parameters with a local thread memory based on the identified transaction type, the monitoring parameters including an application identifier, the distributed transaction identifier, and the call chain data, wherein the application identifier, distributed transaction identifier and the call chain data are added to an outgoing request associated with the thread, the distributed transaction including the outgoing request and the received request.

20. The system of claim 19 , wherein the data includes a uniform resource locator associated with the request, the distributed transaction identifier generated at least in part from the uniform resource locator.

21. The system of claim 19 , wherein the data includes a portion of the request, the distributed transaction identifier generated at least in part from the portion of the request.

22. The system of claim 19 , wherein the distributed transaction identifier associated with the request is stored in a table.

23. The system of claim 19 , the agent executable to receive a subsequent request from the remote application, detect a second data associated with the request, and retrieve the distributed transaction identifier associated with the second data from the table.

24. The system of claim 19 , the agent executable to store the distributed transaction identifier associated with the request.

25. The system of claim 19 , wherein subsequent requests made across one or more servers and associated with the distributed transaction include the distributed transaction identifier.

26. The system of claim 19 , wherein a thread handling the request is associated with the distributed transaction identifier.

27. The system of claim 19 , wherein the distributed transaction identifier includes a distributed transaction name.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2017
From: APPDYNAMICS LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 044173/0050 →
CHANGE OF NAME Recorded Jun 23, 2017
From: APPDYNAMICS, INC.
To: APPDYNAMICS LLC
Reel/Frame 042964/0229 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 4, 2013
From: BANSAL, JYOTI; SUNKARA, BHASKAR
To: APPDYNAMICS, INC.
Reel/Frame 031572/0592 →
Continuity (3)
Continuation 12878919 · Sep 9, 2010
Provisional Application 61241256 · Sep 10, 2009
Related Publication 20140052856A1 · Feb 20, 2014