IP Library Granted Patent US 9,405,603
Granted Patent B2
US 9,405,603 · App. 14/256,903 · Granted Aug 2, 2016

Naming of nodes in net framework

Inventors: David Roth (San Francisco, CA); Sanjay Nagaraj (San Francisco, CA); Michael Margulis (San Francisco, CA); Ryan Ericson (San Francisco, CA)
Assignee: AppDynamics, Inc.
G06F9/547G06F11/30
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,405,603
App. No.
14/256,903
Granted
Aug 2, 2016
Kind
B2
Abstract

A system for naming a process being monitored that handles a requesting a framework such as a .NET framework. The process may be implemented by a .NET application framework within an IIS web server. The naming system allows for user readable names which are more than just numbers or indexes. The naming system is configured from a single location rather than from multiple locations, making it much easier to configure, change and update.

Claims (69)

1. A method for monitoring a business transaction, comprising:

detecting, at a profiler, a call by an application on a first remote server to a node on a second remote server;

reporting, at the profiler, to a coordinator of the detection of the call;

determining, at the coordinator of the first remote server, whether the call should be monitored, wherein the determination is based on whether a request name of the call matches INTERNET INFORMATION SERIVCES (IIS) process or process name or Windows service name;

in response to the determination that the call should be monitored, instantiating an agent; and

automatically generating, at the coordinator, a name for the node which is determined to be monitored and based on information from the agent, the name including the name of a machine on which the node resides and the name of a logical group of nodes that includes the node being called.

2. The method of claim 1 , wherein the application runs in a .NET framework.

3. The method of claim 1 , further comprising comparing a name of the called node to a list of nodes to monitor.

4. The method of claim 3 , wherein the list of nodes includes a list of the INTERNET INFORMATION SERVICES (IIS) processes, the process names, and the Windows service names from a single list at a remote location.

5. The method of claim 1 , further comprising determining a site name associated for the node, the name of the node including the site name.

6. The method of claim 1 , further comprising:

determining multiple work processes working at same site; and

adding a process identifier to the node name.

7. The method of claim 1 , further comprising:

determining multiple work processes working at same site; and

adding a work process index to the node name.

8. The method of claim 1 , further comprising:

determining multiple work processes working at same site; and

merging the work processes into a logical node.

9. The method of claim 1 , further comprising:

determining multiple programs started at the same application; and

adding an application domain identifier.

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 monitoring a business transaction, the method comprising:

detecting, at a profiler, a call by an application on a first remote server to a node on a second remote server;

reporting, at the profiler, to a coordinator of the detection of the call;

determining, at the coordinator of the first remote server, whether the call should be monitored, wherein the determination is based on whether a request name of the call matches INTERNET INFORMATION SERIVCES (IIS) process or process name or Windows service name;

in response to the determination that the call should be monitored, instantiating an agent; and

automatically generating, at the coordinator, a name for the node which is determined to be monitored and based on information from the agent, the name including the name of a machine on which the node resides and the name of a logical group of nodes that includes the node being called.

11. The non-transitory computer readable storage medium of claim 10 , wherein the application runs in a .NET framework.

12. The non-transitory computer readable storage medium of claim 10 , further comprising comparing a name of the called node to a list of nodes to monitor.

13. The non-transitory computer readable storage medium of claim 12 , wherein the list of nodes includes a list of the INTERNET INFORMATION SERVICES (IIS) processes, the process names, and the Windows service names from a single list at a remote location.

14. The non-transitory computer readable storage medium of claim 10 , further comprising determining a site name associated for the node, the name of the node including the site name.

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

determining multiple work processes working at same site; and

adding a process identifier to the node name.

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

determining multiple work processes working at same site; and

adding a work process index to the node name.

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

determining multiple work processes working at same site; and

merging the work processes into a logical node.

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

determining multiple programs started at the same application; and

adding an application domain identifier.

19. A system for monitoring a business transaction, comprising:

a processor;

a memory; and

one or more modules stored in memory and executable by a processor to:

detect, at a profiler, a call by an application on a first remote server to a node on a second remote server;

reporting, at the profiler, to a coordinator of the detection of the call;

determining, at the coordinator of the first remote server, whether the call should be monitored, wherein the determination is based on whether a request name of the call matches INTERNET INFORMATION SERIVCES (IIS) process or process name or Windows service name;

in response to the determination that the call should be monitored, instantiating an agent; and

automatically generate, at the coordinator, a name for the node which is determined to be monitored and based on information from the agent, the name including the name of a machine on which the node resides and the name of a logical group of nodes that includes the node being called.

20. The system of claim 19 , wherein the application runs in a .NET framework.

21. The system of claim 19 , the one or more modules further executable to compare a name of the called node to a list of nodes to monitor.

22. The system of claim 21 , wherein the list of nodes includes a list of the INTERNET INFORMATION SERVICES (IIS) processes, the process names, and the Windows service names from a single list at a remote location.

23. The system of claim 19 , the one or more modules further executable to determine a site name associated for the node, the name of the node including the site name.

24. The system of claim 19 , the one or more modules further executable to:

determining multiple work processes working at same site; and

adding a process identifier to the node name.

25. The system of claim 19 , the one or more modules further executable to:

determining multiple work processes working at same site; and

adding a work process index to the node name.

26. The system of claim 19 , the one or more modules further executable to:

determining multiple work processes working at same site; and

merging the work processes into a logical node.

27. The system of claim 19 , the one or more modules further executable to:

determining multiple programs started at the same application; and

adding an application domain identifier.

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 Aug 22, 2016
From: ROTH, DAVID; ERICSON, RYAN; NAGARAJ, SANJAY; MARGULIS, MICHAEL
To: APPDYNAMICS, INC
Reel/Frame 039501/0293 →
Continuity (1)
Related Publication 20150301877A1 · Oct 22, 2015