IP Library Granted Patent US 10,419,303
Granted Patent B2
US 10,419,303 · App. 15/143,037 · Granted Sep 17, 2019

Real-time ranking of monitored entities

Inventors: Chi Cao Minh (San Mateo, CA); Jad Naous (San Francisco, CA)
Assignee: Cisco Technology, Inc.
H04L43/022G06F11/30H04L43/0817
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,419,303
App. No.
15/143,037
Granted
Sep 17, 2019
Kind
B2
Abstract

The disclosed technology includes ranking entities in real-time to show the relative importance of those entities. The ranking is based on attributes of the entities that vary in real-time. An example of an entity is a process (e.g., an executing computer program) and the associated attributes can include the process' current CPU memory consumption. While the process runs, its CPU and memory consumption vary in real-time.

Claims (46)

1. A system for real-time ranking of a plurality of processes in a monitored environment, including:

a processor;

a memory; and

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

sample values of a plurality of attributes for the plurality of processes running on a monitored environment, wherein the plurality of processes are distributed business transaction processes;

generate a time series for the sampled values of the plurality of attributes;

generate smoothed time series by applying a curve fitting technique to the generated time series;

sort the smoothed time series for each attribute based on a sort order to assign an attribute rank to each attribute of the plurality of attributes;

generate a combined value for each process of the plurality of processes by combining the sorted smoothed time series for all of the attributes of each process;

in response to generating a combined value for each process, sort the plurality of processes by the combined value based on the sort order to assign a process rank for each process; and

applying a tie-breaker rule to break any ties in the attribute rank, wherein a final tie-breaker in the tie breaker rule is based on a unique identifier assigned to each process of the plurality of processes.

2. The system of claim 1 , wherein the monitored environment includes a machine and the plurality of attributes include CPU usage and memory usage.

3. The system of claim 1 , wherein the curve fitting technique includes a weighted moving average.

4. The system of claim 3 , wherein the weighted moving average includes an unequally weighted moving average.

5. The system of claim 1 , wherein the sort order includes ranking higher values higher ranks.

6. The system of claim 1 , wherein the tie-breaker rule includes using values of other attributes.

7. The system of claim 1 , wherein the combined value for each process includes a weighted average of the attribute rank of each attribute for each process.

8. The system of claim 1 , wherein the system is configured to limit output data based on the process rank.

9. A method for real-time ranking of a plurality of processes in a monitored environment, including:

sampling, at a sampling rate, values of a plurality of attributes for a plurality of processes running on a monitored environment, wherein the processes are distributed business transaction processes;

generating a time series for the sampled values of the plurality of attributes;

sorting the generated time series of each attribute of the plurality of attributes based on a sort order to assign an attribute rank to each attribute of the plurality of attributes;

based on the sorted time series of each attribute, sorting the plurality of processes by combining the assigned attribute ranks for all of the attributes of the plurality of processes based on the sort order to assign a process rank for each process of the plurality of processes;

outputting data associated with the ranked processes; and

applying a tie-breaker rule to break any ties in the attribute rank, wherein a final tie-breaker in the tie breaker rule is based on a unique identifier assigned to each process of the plurality of processes.

10. The method of claim 9 , wherein sorting the generated time series includes:

generating a smoothed time series by applying a curve fitting technique to the generated time series; and

sorting the smoothed time series for each attribute of the plurality of attributes based on the sort order to assign the attribute rank to each attribute.

11. The method of claim 10 , wherein sorting the processes includes:

generating a combined value for each process of the plurality of processes by combining the sorted smoothed time series for all of the attributes of each process of the plurality of processes; and

sorting the plurality of processes by the combined value based on the sort order to assign the process rank for each process of the plurality of processes.

12. The method of claim 9 , wherein the monitored environment includes a machine and the plurality of attributes include CPU usage and memory usage.

13. The method of claim 9 , wherein the curve fitting technique includes a weighted moving average.

14. The method of claim 13 , wherein the weighted moving average includes an equally weighted moving average.

15. The method of claim 13 , wherein the sort order includes ranking lower values higher ranks.

16. The method of claim 9 , wherein the combined value for each process includes a weighted average of the attribute rank of each attribute for each process.

17. A non-transitory computer readable medium embodying instructions when executed by a processor to cause operations to be performed including:

sampling, at a sampling rate, values of a plurality of attributes for processes running on a monitored environment, wherein the processes are distributed business transaction processes;

generating a time series for the sampled values of the plurality of attributes;

sorting the generated time series of each attribute of the plurality of attributes based on a sort order to assign an attribute rank to each attribute of the plurality of attributes;

based on the sorted time series of each attribute, the plurality of processes by combining the assigned attribute ranks for all of the attributes of the plurality of processes based on the sort order to assign a process rank for each process of the plurality of processes;

outputting data associated with the ranked processes; and

applying a tie-breaker rule to break any ties in the attribute rank, wherein a final tie-breaker in the tie breaker rule is based on a unique identifier assigned to each process of the plurality of processes.

18. The non-transitory computer readable medium of claim 17 , wherein sorting the generated time series includes:

generating a smoothed time series by applying a curve fitting technique to the generated time series; and

sorting the smoothed time series for each attribute of the plurality of attributes based on the sort order to assign the attribute rank to each attribute.

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 Feb 28, 2017
From: MINH, CHI CAO; NAOUS, JAD
To: APPDYNAMICS, INC.
Reel/Frame 041404/0309 →
Continuity (1)
Related Publication 20170316005A1 · Nov 2, 2017