# US 11,030,024 B2 · Assigning a severity level to a computing service using tenant telemetry data

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

- Number: US 11,030,024 B2
- Document ID: US11030024B2
- Status: Granted
- Kind: B2
- Application number: 16/554,495
- Filed: 2019-08-28
- Published: 2021-03-04
- Granted: 2021-06-08
- Earliest claimed: 2019-08-28
- Assignees: Microsoft Technology Licensing, LLC
- Applicants: Microsoft Technology Licensing, LLC
- Inventors: Rahul Nigam; Mark R. Gilbert; Parminder Pal Singh
- Web page: https://patentgrep.com/patent/US11030024B2

## CPC

- G06F 9/547: {Remote procedure calls [RPC]; Web services}
- H04L 69/40: for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection (management of faults, events, alarms or notifications in data switching networks H04L41/06)
- G06F 11/0781: {Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level}
- H04L 41/0609: {based on severity or priority}
- G06F 11/3006: {where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems (multiprogramming arrangements G06F9/46; allocation of resources G06F9/50)}
- H04L 43/0817: by checking functioning
- H04L 67/535: {Tracking the activity of the user (network monitoring arrangements H04L43/00; recording of computer activity G06F11/34)}
- 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

Systems and methods for determining a severity level of a computing service. One system includes an electronic processor that is configured to receive telemetry data associated with one or more tenants of an online service providing services through a plurality of computing services and calculate, based on the telemetry data, a number of accesses of each of the plurality of computing services during a predetermined time period. The electronic processor is also configured to, for each of the plurality of computing services, assign a severity level to each computing service based on the number of accesses of each computing service during the predetermined time period. The electronic processor is further configured to, in response to detecting a failure of one of the plurality of computing services, initiate a response to the failure based on the severity level assigned to the one of the plurality of computing services.

## Claims

### Claim 1

A system for determining a severity level of a computing service, the system comprising:
an electronic processor configured to
receive telemetry data associated with one or more tenants of an online service, the online service providing services through a plurality of computing services;
calculate, based on the telemetry data, a number of accesses of each of the plurality of computing services during a predetermined time period by counting each access by a unique user during the predetermined time period;
for each of the plurality of computing services, assign a severity level to each computing service based on the number of accesses of each computing service during the predetermined time period relative to the number of accesses of another computing service included in the plurality of computing services during the predetermined time period; and
in response to detecting a failure of one of the plurality of computing services, initiate a response to the failure based on the severity level assigned to the one of the plurality of computing services,
wherein the electronic processor is configured to assign the severity level to each computing service based on the number of accesses of each computing service during the predetermined time period relative to the number of accesses of another computing service included in the plurality of computing services during the predetermined time period by calculating one or more percentile thresholds based on the number of accesses of each of the plurality of computing services and assigning the severity level to each of the plurality of computing services based on a comparison of the number of accesses of each of the plurality of computing services to the one or more percentile thresholds.

### Claim 2 (depends on 1)

The system according to claim 1, wherein the plurality of computing services includes a plurality of application programming interfaces (APIs).

### Claim 3 (depends on 1)

The system according to claim 1, wherein the electronic processor is configured to calculate the number of accesses for each of the plurality of computing services by counting each access by a unique non-synthetic user during the predetermined time period.

### Claim 4 (depends on 1)

The system according to claim 1, wherein the electronic processor is further configured to normalize the telemetry data based on at least one selected from a group consisting of a time of day, a day of a week, and a time of a year.

### Claim 5 (depends on 1)

The system according to claim 1, wherein the predetermined time period is one selected from a group consisting of an hour, a day, and a month.

### Claim 6 (depends on 1)

The system according to claim 1, wherein the electronic processor is configured to select the one or more tenants randomly from a plurality of tenants using the online service.

### Claim 7 (depends on 1)

The system according to claim 1, wherein the severity level assigned to at least one of the plurality of computing services is a first severity level associated with first operating condition of the at least one of the plurality of computing services and wherein the electronic processor is further configured to assign a second severity level to the at least one of the plurality of computing services, the second severity level associated with a second operating condition of the at least one of the plurality of computing services.

### Claim 8 (depends on 7)

The system according to claim 7, wherein, in response to detecting a failure of the at least one of the plurality of computing services, the electronic processor is further configured to select one of the first severity level and the second severity level based on an operating state of the at least one of the plurality of computing services associated with the failure.

### Claim 9 (depends on 1)

The system according to claim 1, wherein the one or more percentile thresholds includes a 25 percentile threshold, a 50 percentile threshold, a 75 percentile threshold, and a 95 percentile threshold.

### Claim 10

A method of determining a severity level of a computing service, the method comprising:
receiving, with an electronic processor, telemetry data associated with one or more tenants of an online service, the online service providing services through a plurality of computing services;
calculating, with the electronic processor, a number of accesses of each of the plurality of computing services during a predetermined time period, based on the telemetry data by counting each access by a non-synthetic user during the predetermined time period differently than each access by a synthetic user during the predetermined time period;
for each of the plurality of computing services, assigning, with the electronic processor, a severity level to each computing service based on the number of accesses of each computing service during the predetermined time period relative to the number of accesses of another computing service included in the plurality of computing services during the predetermined time period; and
in response to detecting a failure of one of the plurality of computing services, initiating, with the electronic processor, a response to the failure based on the severity level assigned to the one of the plurality of computing services,
wherein assigning the severity level to each computing service based on the number of accesses of each computing service during the predetermined time period relative to the number of accesses of another computing service included in the plurality of computing services during the predetermined time period includes calculating a mean of the number of accesses of each of the plurality of computing services and assigning the severity level to each of the plurality of computing services based on a comparison of the number of accesses of each of the plurality of computing services to the mean.

### Claim 11 (depends on 10)

The method according to claim 10, the method further comprising normalizing the telemetry data based on at least one selected from a group consisting of a time of day, a day of a week, and a time of a year.

### Claim 12 (depends on 10)

The method according to claim 10, the method further comprising selecting the one or more tenants randomly from a plurality of tenants using the online service.

### Claim 13

A non-transitory, computer-readable medium storing instructions that, when executed by an electronic processor, perform a set of functions, the set of functions comprising:
receiving telemetry data associated with one or more tenants of an online service, the online service providing services through a plurality of computing services;
calculating a number of accesses of each of the plurality of computing services during a predetermined time period, based on the telemetry data;
for each of the plurality of computing services, assigning a severity level from a plurality of predefined levels to each computing service based on the number of accesses of each computing service during the predetermined time period relative to the number of accesses of another computing service included in the plurality of computing services during the predetermined time period, wherein each plurality of predefined levels defines at least action to take in response to a subsequently-detected failure; and
in response to detecting a failure of one of the plurality of computing services, determining the severity level assigned to the one of the plurality of computing services and initiating the at least one action defined by the severity level assigned to the one of the plurality of computing services,
wherein the severity level assigned to at least one of the plurality of computing services is a first severity level associated with first operating condition of the at least one of the plurality of computing services and the set of functions further comprising assigning a second severity level to the at least one of the plurality of computing services, the second severity level associated with a second operating condition of the at least one of the plurality of computing services.

### Claim 14 (depends on 13)

The non-transitory, computer-readable medium according to claim 13, the set of functions further comprising in response to detecting a failure of the at least one of the plurality of computing services, selecting one of the first severity level and the second severity level based on an operating state of the at least one of the plurality of computing services associated with the failure.

### Claim 15

A system for determining a severity level of a computing service, the system comprising:
an electronic processor configured to
receive telemetry data associated with one or more tenants of an online service, the online service providing services through a plurality of computing services;
calculate, based on the telemetry data, a number of accesses of each of the plurality of computing services during a predetermined time period by counting each access by a unique user during the predetermined time period;
for each of the plurality of computing services, assign a severity level to each computing service based on the number of accesses of each computing service during the predetermined time period relative to the number of accesses of another computing service included in the plurality of computing services during the predetermined time period; and
in response to detecting a failure of one of the plurality of computing services, initiate a response to the failure based on the severity level assigned to the one of the plurality of computing services,
wherein the electronic processor is configured to assign the severity level to each computing service based on the number of accesses of each computing service during the predetermined time period relative to the number of accesses of another computing service included in the plurality of computing services during the predetermined time period by calculating a medium of the number of accesses of each of the plurality of computing services and assigning the severity level to each of the plurality of computing services based on a comparison of the number of accesses of each of the plurality of computing services to the medium.
