IP Library Granted Patent US 10,523,538
Granted Patent B2
US 10,523,538 · App. 15/215,097 · Granted Dec 31, 2019

User interface that provides a proactive monitoring tree with severity state sorting

Inventors: Tristan Fletcher (Pacifica, CA); Cary Glen Noel (Pleasant Hill, CA)
Assignee: Splunk Inc.
H04L43/045G06F9/45533G06F11/323H04L12/4641H04L43/065H04L43/0847H04L43/0876H04L43/106G06F11/3409G06F2201/815
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,523,538
App. No.
15/215,097
Granted
Dec 31, 2019
Kind
B2
Abstract

The disclosed embodiments relate to a system that displays performance data for a computing environment. During operation, the system first determines values for a performance metric for entities that comprise the computing environment. Next, the system displays the computing environment as a tree comprising nodes representing the entities and edges representing parent-child relationships between the entities. While displaying the tree, the system displays the child nodes for each parent in sorted order based on values of the performance metric associated with the child nodes.

Claims (58)

1. A computer-implemented method for representing entities of a hierarchical computing environment in a monitoring tree, with nodes of the monitoring tree representing at least a subset of entities in the hierarchical computing environment and edges of the monitoring tree representing parent-child relationships between the entities, the method comprising:

for each node in the nodes of the monitoring tree:

assigning a performance state to the node based on at least one of:

(a) a value of a performance metric associated with an entity represented by the node, and

(b) performance states of child nodes of the node;

associating, with the node, a count of descendants of the node that are associated with a predetermined performance state, wherein the count is based on maintaining an array associated with the node, wherein the array includes a count of a performance state of each descendant of the node; and

causing display of (1) at least a subset of the nodes of the monitoring tree in an order based on the counts associated with the subset of the nodes, and (2) visual indicators that are indicative of the performance states assigned to the subset of the nodes, wherein the subset of the nodes is generated for the monitoring tree by starting with leaf nodes and constructing successive levels of parent nodes from child nodes, wherein the subset of the nodes comprises the leaf nodes, the parent nodes and the child nodes.

2. The computer-implemented method of claim 1 , wherein the assigning of the performance state to the node is at least based on a worst performance state selected from the performance states of the child nodes of the node.

3. The computer-implemented method of claim 1 , wherein the predetermined performance state is an extremum performance state selected from a set of performance states.

4. The computer-implemented method of claim 1 , wherein the visual indicators are further indicative of the counts associated with the subset of the nodes.

5. The computer-implemented method of claim 1 , wherein causing the display of the subset of the nodes further includes causing display of the subset of the nodes such that child nodes of each node in the subset of the nodes are displayed in a sorted order based on the associated counts.

6. The computer-implemented method of claim 1 , wherein causing the display of the subset of the nodes includes displaying parent nodes in the subset of nodes as a first shape and displaying leaf nodes in the subset of the nodes as a second shape that is different from the first shape.

7. The computer-implemented method of claim 1 , wherein the entities include one or more of:

a virtual machine;

a host system that executes one or more virtual machines;

a cluster comprising one or more host systems; and

a virtual center comprising one or more clusters.

8. The computer-implemented method of claim 1 , wherein the performance metric is based on one or more of:

central-processing unit (CPU) utilization;

memory utilization;

disk utilization;

network utilization; and

power consumption.

9. The computer-implemented method of claim 1 , wherein the assigning of the performance state to the node is at least based on a comparison of the value of the performance metric with one or more threshold values.

10. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for representing entities of a hierarchical computing environment in a monitoring tree, with nodes of the monitoring tree representing at least a subset of entities in the hierarchical computing environment and edges of the monitoring tree representing parent-child relationships between the entities, the method comprising:

for each node in the nodes of the monitoring tree:

assigning a performance state to the node based on at least one of:

(a) a value of a performance metric associated with an entity represented by the node, and

(b) performance states of child nodes of the node;

associating, with the node, a count of descendants of the node that are associated with a predetermined performance state, wherein the count is based on maintaining an array associated with the node, wherein the array includes a count of a performance state of each descendant of the node; and

causing display of (1) at least a subset of the nodes in an order based on the counts associated with the subset of the nodes, and (2) visual indicators that are indicative of the performance states assigned to the subset of the nodes, wherein the subset of the nodes is generated for the monitoring tree by starting with leaf nodes and constructing successive levels of parent nodes from child nodes, wherein the subset of the nodes comprises the leaf nodes, the parent nodes and the child nodes.

11. The non-transitory computer-readable storage medium of claim 10 , wherein the assigning of the performance state to the node is at least based on a worst performance state selected from the performance states of the child nodes of the node.

12. The non-transitory computer-readable storage medium of claim 10 , wherein the predetermined performance state is an extremum performance state selected from a set of performance states.

13. The non-transitory computer-readable storage medium of claim 10 , wherein the visual indicators are further indicative of the counts associated with the subset of the nodes.

14. The non-transitory computer-readable storage medium of claim 10 , wherein causing the display of the subset of the nodes further includes causing display of the subset of the nodes such that child nodes of each node in the subset of the nodes are displayed in a sorted order based on the associated counts.

15. The non-transitory computer-readable storage medium of claim 10 , wherein causing the display of the subset of the nodes includes displaying parent nodes in the subset of nodes as a first shape and displaying leaf nodes in the subset of the nodes as a second shape that is different from the first shape.

16. The non-transitory computer-readable storage medium of claim 10 , wherein the entities include one or more of:

a virtual machine;

a host system that executes one or more virtual machines;

a cluster comprising one or more host systems; and

a virtual center comprising one or more clusters.

17. The non-transitory computer-readable storage medium of claim 10 , wherein the performance metric is based on one or more of:

central-processing unit (CPU) utilization;

memory utilization;

disk utilization;

network utilization; and

power consumption.

18. The non-transitory computer-readable storage medium of claim 10 , wherein the assigning of the performance state to the node is at least based on a comparison of the value of the performance metric with one or more threshold values.

19. A system comprising:

computer memory for storing machine data; and

one or more processors configured to:

for each node in the nodes of a monitoring tree:

assign a performance state to the node based on at least one of:

(a) a value of a performance metric associated with an entity represented by the node, and

(b) performance states of child nodes of the node;

associate, with the node, a count of descendants of the node that are associated with a predetermined performance state, wherein the count is based on maintaining an array associated with the node, wherein the array includes a count of a performance state of each descendant of the node; and

cause display of (1) at least a subset of the nodes in an order based on the counts associated with the subset of the nodes, and (2) visual indicators that are indicative of the performance states assigned to the subset of the nodes, wherein the subset of the nodes is generated for the monitoring tree by starting with leaf nodes and constructing successive levels of parent nodes from child nodes, wherein the subset of the nodes comprises the leaf nodes, the parent nodes and the child nodes.

20. The system of claim 19 , further comprising a display device, wherein the causing display of the subset of the nodes and the visual indicators includes causing the display device to display the subset of the nodes and the visual indicators.

Assignments (4)
CHANGE OF NAME Recorded Jul 22, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 072170/0599 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2025
From: SPLUNK LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 072173/0058 →
CHANGE OF NAME Recorded Jan 6, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 069825/0782 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 25, 2018
From: FLETCHER, TRISTAN; NOEL, CARY GLEN
To: SPLUNK INC.
Reel/Frame 045906/0010 →
Continuity (11)
Continuation 14812948 · Jul 29, 2015
Continuation 14253490 · Apr 15, 2014
Continuation In Part 14167316 · Jan 29, 2014
Continuation In Part 13874423 · Apr 30, 2013
Continuation In Part 13874434 · Apr 30, 2013
Continuation In Part 13874441 · Apr 30, 2013
Continuation In Part 13874448 · Apr 30, 2013
Provisional Application 61883869 · Sep 27, 2013
Provisional Application 61900700 · Nov 6, 2013
Provisional Application 61979484 · Apr 14, 2014
Related Publication 20160330090A1 · Nov 10, 2016
Cited By (1)
US 12,217,075