# US 2013/0159502 A1 · Methods for Monitoring Computer Resources

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2013/0159502 A1
- Document ID: US20130159502A1
- Status: Published application
- Kind: A1
- Application number: 13/330,346
- Filed: 2011-12-19
- Published: 2013-06-20
- Earliest claimed: 2011-12-19
- Assignees: Go Daddy Operating Company, LLC
- Inventors: Erskine Thompson
- Web page: https://patentgrep.com/patent/US20130159502A1

## CPC

- G06F 11/3447: {Performance evaluation by modeling}
- G06F 11/0709: {in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems}
- G06F 11/0754: {by exceeding limits}
- G06F 11/3409: {for performance assessment}
- H04L 63/0815: {providing single-sign-on or federations}
- G06F 2201/81: Threshold
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

One embodiment of a method of the present invention for monitoring computer resources provides for retrieving a set of resource-metric records for a predetermined time interval, forming a first mathematical matrix containing metric's values arranged on date-time and resource-metric axes, creating a second mathematical matrix containing features and a third mathematical matrix containing weights, building a feature relationship tree, generating a predicted value for the resource-metric identifier, determining a variance between predicted value and metric's value, and triggering an alert if the variance exceeds a predetermined alert threshold.

## Claims

### Claim 1

A method, comprising the steps of:
a) retrieving a first set of records for a first predetermined time interval from one or more resource-metric records stored at one or more electronic storage devices, wherein said one or more resource-metric records at least contain a resource-metric identifier, a metric's value, and a date-time value when said metric's value was obtained,
b) forming a first mathematical matrix containing one or more metric's values arranged on date-time and resource-metric axes,
c) creating a second mathematical matrix containing one or more features and a third mathematical matrix containing one or more weights, wherein multiplication of said second mathematical matrix and said third mathematical matrix produces said first mathematical matrix,
d) building a feature relationship tree, wherein each feature in said one or more features is assigned a list of date-time values and date-time weights from said third mathematical matrix, and said each feature is assigned a list of resource-metric identifiers and resource-metric weights from said second mathematical matrix,
e) generating a predicted value for said resource-metric identifier and a most recent date-time value in said feature relationship tree,
f) determining a variance between said predicted value and said metric's value for said resource-metric identifier, and
g) if said variance exceeds a predetermined alert threshold, then triggering an alert.

### Claim 2 (depends on 1)

The method of claim 1, further comprising the step of:
h) collecting said one or more resource-metric records from one or more resources on a computer network.

### Claim 3 (depends on 1)

The method of claim 1, further comprising the step of:
h) saving said one or more resource-metric records to said one or more electronic storage devices.

### Claim 4 (depends on 1)

The method of claim 1, wherein said creating said second mathematical matrix and said third mathematical matrix is achieved by applying a non-negative matrix factorization algorithm to said first mathematical matrix.

### Claim 5 (depends on 1)

The method of claim 1, further comprising the step of:
h) sorting said list of date-time values and date-time weights for said each feature by date-time weight in descending order in said feature relationship tree.

### Claim 6 (depends on 1)

The method of claim 1, further comprising the step of:
h) sorting said list of resource-metric identifiers and resource-metric weights for said each feature by resource-metric weight in descending order in said feature relationship tree.

### Claim 7 (depends on 1)

The method of claim 1, further comprising the step of:
h) sorting said features by highest date-time weight of said each feature in descending order in said feature relationship tree.

### Claim 8 (depends on 1)

The method of claim 1, further comprising the step of:
h) pruning nodes in said list of date-time values and date-time weights by leaving top N1 nodes by date-time weights in said each feature and deleting nodes with sequential positions more than N1, wherein N1 is a first predetermined value.

### Claim 9 (depends on 1)

The method of claim 1, further comprising the step of:
h) pruning nodes in said list of resource-metric identifiers and resource-metric weights by leaving top N2 nodes by resource-metric weights in said each feature and deleting nodes with sequential positions more than N2, wherein N2 is a second predetermined value.

### Claim 10 (depends on 1)

The method of claim 1, further comprising the step of:
h) deleting features from said feature relationship tree if said features do not contain a node corresponding to said most recent date-time value in said first set of records retrieved from said one or more electronic storage devices.

### Claim 11 (depends on 1)

The method of claim 1, wherein said generating said predicted value for said resource-metric identifier and said most recent date-time value in said feature relationship tree is achieved by averaging said metric's values.

### Claim 12 (depends on 1)

The method of claim 1, wherein said generating said predicted value for said resource-metric identifier and said most recent date-time value in said feature relationship tree is achieved via a k-Nearest Neighbor algorithm.

### Claim 13 (depends on 1)

The method of claim 1, wherein said variance between said predicted value and said metric's value is normalized on a sliding scale.

### Claim 14 (depends on 1)

The method of claim 1, wherein said variance between said predicted value and said metric's value is normalized on a scale between 0 and 1.

### Claim 15 (depends on 1)

The method of claim 1, wherein said variance between said predicted value and said metric's value is normalized using a Gaussian function.

### Claim 16 (depends on 1)

The method of claim 1, further comprising the step of:
h) verifying that a latest metric's value for said resource-metric identifiers will trigger said alert before triggering said alert.

### Claim 17

A method, comprising the steps of:
a) collecting one or more resource-metric records from one or more resources on a computer network, wherein said one or more resource-metric records at least contain a resource-metric identifier, a metric's value, and a date-time value when said metric's value was obtained,
b) saving said one or more resource-metric records to one or more electronic storage devices,
c) retrieving a first set of records from said one or more resource-metric records for a first predetermined time interval from said one or more electronic storage devices,
d) forming a first mathematical matrix containing one or more metric's values arranged on date-time and resource-metric axes,
e) creating a second mathematical matrix containing one or more features and a third mathematical matrix containing one or more weights by applying a non-negative matrix factorization algorithm to said first mathematical matrix, wherein multiplication of said second mathematical matrix and said third mathematical matrix produces said first mathematical matrix,
f) building a feature relationship tree, wherein each feature in said one or more features is assigned a list of date-time values and date-time weights from said third mathematical matrix, and said feature is assigned a list of resource-metric identifiers and resource-metric weights from said second mathematical matrix,
g) sorting said list of date-time values and date-time weights for said each feature by date-time weight in descending order in said feature relationship tree,
h) sorting said list of resource-metric identifiers and resource-metric weights for said each feature by resource-metric weight in descending order in said feature relationship tree,
i) sorting said features by highest date-time weight of said each feature in descending order in said feature relationship tree,
j) pruning nodes in said list of date-time values and date-time weights by leaving top N1 nodes by date-time weights in said each feature and deleting nodes with sequential positions more than N1, wherein N1 is a first predetermined value,
k) pruning nodes in said list of resource-metric identifiers and resource-metric weights by leaving top N2 nodes by resource-metric weights in said each feature and deleting nodes with sequential positions more than N2, wherein N2 is a second predetermined value,
l) deleting features from said feature relationship tree if said features do not contain a node corresponding to a most recent date-time value in said first set of records retrieved from said one or more electronic storage devices,
m) generating a predicted value for each resource-metric identifier and said most recent date-time value in said feature relationship tree via a k-Nearest Neighbor algorithm,
n) determining a variance between said predicted value and said metric's value for said each resource-metric identifier as a normalized value between 0 and 1 using a Gaussian function for said each resource-metric identifier, and
o) if said variance exceeds a predetermined alert threshold, then triggering an alert.

### Claim 18

A method, comprising the steps of:
a) retrieving a first set of records for a single resource and a first predetermined time interval from one or more metric records stored at one or more electronic storage devices, wherein said one or more metric records at least contain a metric identifier, a metric's value, and a date-time value when said metric's value was obtained,
b) forming a first mathematical matrix containing one or more metric's values arranged on date-time and metric identifier axes,
c) creating a second mathematical matrix containing one or more features and a third mathematical matrix containing one or more weights, wherein multiplication of said second mathematical matrix and said third mathematical matrix produces said first mathematical matrix,
d) building a feature relationship tree, wherein each feature in said one or more features is assigned a list of date-time values and date-time weights from said third mathematical matrix, and said each feature is assigned a list of metric identifiers and metric identifier weights from said second mathematical matrix,
e) generating a predicted value for said metric identifier and a most recent date-time value in said feature relationship tree,
f) determining a variance between said predicted value and said metric's value for said metric identifier, and
g) if said variance exceeds a predetermined alert threshold, then triggering an alert.

### Claim 19

A method, comprising the steps of:
a) retrieving a first set of records for a single metric and a first predetermined time interval from one or more resource records stored at one or more electronic storage devices, wherein said one or more resource records at least contain a resource identifier, a metric's value, and a date-time value when said metric's value was obtained,
b) forming a first mathematical matrix containing one or more metric's values arranged on date-time and resource identifier axes,
c) creating a second mathematical matrix containing one or more features and a third mathematical matrix containing one or more weights, wherein multiplication of said second mathematical matrix and said third mathematical matrix produces said first mathematical matrix,
d) building a feature relationship tree, wherein each feature in said one or more features is assigned a list of date-time values and date-time weights from said third mathematical matrix, and said each feature is assigned a list of resource identifiers and resource identifier weights from said second mathematical matrix,
e) generating a predicted value for said resource identifier and a most recent date-time value in said feature relationship tree,
f) determining a variance between said predicted value and said metric's value for said resource identifier, and
g) if said variance exceeds a predetermined alert threshold, then triggering an alert.
