IP Library Granted Patent US 10,452,469
Granted Patent B2
US 10,452,469 · App. 15/582,699 · Granted Oct 22, 2019

Server performance correction using remote server actions

Inventors: Ido Carmel (San Francisco, CA); Abhijit Sawant (San Francisco, CA); Raghvendra Singh (San Francisco, CA); Takashi Arai (San Francisco, CA); Andrew Morgan (San Francisco, CA); Bhaskar Sunkara (San Francisco, CA)
Assignee: Cisco Technology, Inc.
G06F11/0793G06F11/0709G06F11/079G06F11/0748G06F11/3409H04L67/02H04L67/22G06F11/3495G06F2201/815G06F2201/87
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 10,452,469
App. No.
15/582,699
Granted
Oct 22, 2019
Kind
B2
Abstract

Business transactions and the nodes processing the transactions may be monitored. Actions may be applied to one or more nodes when a performance issue is detected. A performance issue may relate to a metric associated with a transaction or node that processes the transaction. If a performance metric does not satisfy a health rule, the policy determines which action should be performed to correct the performance of the node. The corrective action may be applied to a node other than the node at which the performance metric is associated with. For example, if a performance metric for a first node does not satisfy a threshold, the corrective action may be applied to a second node. When a solution applied to a second node is found to correct the problem in first node, the solution may be applied to the other nodes experiencing the same problem.

Claims (48)

1. A method for monitoring a distributed business transaction over a plurality of nodes, the method including:

receiving, by a controller on a server remote from the plurality of nodes, performance data associated with the plurality of nodes that process the distributed business transaction, the performance data received from agents installed at the plurality of nodes, the nodes including servers and virtual machines;

detecting, by the controller, a performance issue with a first node of the plurality of nodes based on the received performance data;

determining that a second node is a source of the performance issue detected at the first node based on a parameter associated with the first node associated with the detected performance issue;

applying a corrective action to the second node to address the source of the detected performance issue at the first node; and

monitoring the first node associated with the detected performance issue to determine whether subsequent performance data received for the first node associated with the detected performance issue improves after the corrective action is applied to the second node.

2. The method of claim 1 , wherein detecting the performance issue includes comparing the received performance data against one or more health rules.

3. The method of claim 2 , including determining the corrective action to apply based on a violation of the one or more of the health rules.

4. The method of claim 1 , wherein the performance issue is caused by a lack of resources at the second node.

5. The method of claim 1 , including:

determining a metric for the first node associated with the detected performance issue.

6. The method of claim 1 , including:

instructing the agent or agents installed on the second node to apply the corrective action.

7. The method of claim 1 , wherein the corrective action includes creating additional instances of virtual machines, restarting a machine, executing a string of commands via script code, configuring a new or restarted virtual machine, installing an agent in a virtual machine, applying a configuration to a virtual machine or application, or restarting an application.

8. The method of claim 1 , including:

determining based on the monitoring that the corrective action applied to the second node does not result in the detected performance issue being corrected; and

applying another corrective action to the second node or another one of the plurality of nodes other than the first node.

9. The method of claim 1 , including:

selecting the corrective action from a list of available action sorted based on a probability of addressing the detected performance issue.

10. The method of claim 1 , wherein the second node processes a request from the first node.

11. A non-transitory computer readable storage medium having embodied thereon a program, the program being executable by a processor to perform operations for monitoring a distributed business transaction over a plurality of nodes, the operations including:

receiving, by a controller on a server remote from the plurality of nodes, performance data associated with the plurality of nodes that process the distributed business transaction, the performance data received from agents installed at the plurality of nodes, the nodes including servers and virtual machines;

detecting, by the controller, a performance issue with a first node of the plurality of nodes based on the received performance data;

determining that a second node is a source of the performance issue detected at the first node based on a parameter associated with the first node associated with the detected performance issue;

applying a corrective action to the second node to address the source of the detected performance issue at the first node; and

monitoring the first node associated with the detected performance issue to determine whether subsequent performance data received for the first node associated with the detected performance issue improves after the corrective action is applied to the second node.

12. The non-transitory computer readable storage medium of claim 11 , the operations including:

determining based on the monitoring that the corrective action applied to the second node does not result in the detected performance issue being corrected; and

applying another corrective action to the second node or another node other than the first node associated with the detected performance issue.

13. A system for monitoring a business transaction, including:

a processor;

a memory; and

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

receive, by a controller on a server remote from the plurality of nodes, performance data associated with the plurality of nodes that process the distributed business transaction, the performance data received from agents installed at the plurality of nodes, the nodes including servers and virtual machines;

detect, by the controller, a performance issue with a first node of the plurality of nodes based on the received performance data;

determine that a second node is a source of the performance issue detected at the first node based on a parameter associated with the first node associated with the detected performance issue;

apply a corrective action to the second node to address the source of the detected performance issue at the first node; and

monitor the first node associated with the detected performance issue to determine whether subsequent performance data received for the first node associated with the detected performance issue improves after the corrective action is applied to the second node.

14. The system of claim 13 , wherein the operations to detect the performance issue include operations to compare the received performance data against one or more health rules.

15. The system of claim 14 , the one or more modules are executable by a processor to perform operations including:

determine the corrective action to apply based on a violation of the one or more of the health rules.

16. The system of claim 13 , wherein the corrective action is applied to the second node to address a performance issue associated with a request initiated by the first node associated with the detected performance issue, wherein the performance issue associated with the request is caused by a lack of resources at the second node.

17. The system of claim 13 , the one or more modules are executable by a processor to perform operations including:

determine based on the monitoring that the corrective action applied to the second node does not result in the detected performance issue being corrected; and

apply another corrective action to the second node or another one of the plurality of nodes other than the first node.

18. The system of claim 13 , the one or more modules are executable by a processor to perform operations including:

select the corrective action from a list of available action sorted based on a probability of addressing the detected performance issue.

19. The system of claim 13 , wherein the second node processes a request from the first node.

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 May 23, 2017
From: SAWANT, ABHIJIT; CARMEL, IDO; SINGH, RAGHVENDRA; MORGAN, ANDREW; ARAI, TAKASHI; SUNKARA, BHASKAR
To: APPDYNAMICS, INC.
Reel/Frame 042483/0947 →
Continuity (2)
Continuation 14175945 · Feb 7, 2014
Related Publication 20180081751A1 · Mar 22, 2018