# US 11,909,604 B2 · Automatic provisioning of monitoring for containerized microservices

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

- Number: US 11,909,604 B2
- Document ID: US11909604B2
- Status: Granted
- Kind: B2
- Application number: 17/678,999
- Filed: 2022-02-23
- Published: 2022-06-09
- Granted: 2024-02-20
- Earliest claimed: 2015-10-19
- Assignees: Sysdig, Inc.
- Applicants: Sysdig, Inc.
- Inventors: Loris Degioanni
- Web page: https://patentgrep.com/patent/US11909604B2

## CPC

- H04L 41/5009: Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
- H04L 41/5058: {Service discovery by the service manager}
- H04L 41/0886: {Fully automatic configuration}
- H04L 41/5041: characterised by the time relationship between creation and deployment of a service
- H04L 43/045: for graphical visualisation of monitoring data
- H04L 41/22: comprising specially adapted graphical user interfaces [GUI]
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A monitoring system is configured to receive information regarding a microservice run in one or more containers at a computing cluster; submit a request to a cluster manager of the computing cluster via an application programming interface (API) for adding one or more configurations for monitoring the microservice to a configuration dataset managed by the cluster manager; receive monitoring data related to the microservice in accordance with the one or more configurations; and transmit the monitoring data to a user device associated with the microservice.

## Claims

### Claim 1

A computer-implemented method of automatic monitoring of containerized microservices, comprising:
receiving, by a processor, information regarding a microservice executed in one or more containers of a computing cluster in accordance with a configuration dataset for the microservice that is managed by a cluster manager of the computing cluster;
submitting, by the processor, a request to the cluster manager of the computing cluster via an application programming interface (API) for adding one or more configurations specifically for monitoring the microservice to the configuration dataset for the microservice;
as a result of adding the one or more configurations to the configuration dataset for the microservice, receiving monitoring data related to the microservice as the microservice is executed in the one or more containers in accordance with the configuration dataset for the microservice; and
transmitting the monitoring data to a user device associated with the microservice.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, further comprising
issuing one or more initial requests via the API for data regarding new microservices that have been instantiated or created,
the information being received in response to the one or more initial requests.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, the one or more initial requests including a first request to determine whether any new microservice has been created followed by a further request to gather details regarding the new microservice.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, further comprising:
receiving an identifier of a creator of the microservice; and
determining the user device based on the identifier.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, the one or more configurations indicating a criterion associated with a performance metric for generating an alert, routing information for the alert, an organization or a granularity of a report of the monitoring data, or access privilege information for the report.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1,
the cluster manager being Kubernetes,
the one or more configurations leading to creating and storing one or more annotations, labels, or namespaces in a configuration file of a service managed by the cluster manager.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, further comprising:
generating a graphical user interface (GUI) for managing the one or more configurations;
sending instructions to access the GUI to a second user device associated with the microservice;
receiving an update to the one or more configurations via the GUI; and
submitting the update to the cluster manager via the API.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, further comprising:
managing a plurality of configuration templates of configurations for monitoring microservices;
receiving an instruction to select one or more configuration templates of the plurality of configuration templates; and
obtaining the one or more configurations from the one or more configuration templates.

### Claim 9 (depends on 1)

The computer-implemented method of claim 1, further comprising:
receiving contextual information related to the microservice for the monitoring data, including firewall rules, filtered ports, configurations for a virtual private network (VPN), or file access policies; and
transmitting the contextual information to the user device.

### Claim 10 (depends on 1)

The computer-implemented method of claim 1, the monitoring data including a computing performance metric for each container of the one or more containers.

### Claim 11

One or more non-transitory storage media storing instructions which, when executed by one or more computing devices, cause performance of a method of automatic monitoring of containerized microservices, the method comprising:
receiving information regarding a microservice executed in one or more containers of a computing cluster in accordance with a configuration dataset for the microservice that is managed by a cluster manager of the computing cluster;
submitting a request to the cluster manager of the computing cluster via an application programming interface (API) for adding one or more configurations specifically for monitoring the microservice to the configuration dataset for the microservice;
as a result of adding the one or more configurations to the configuration dataset for the microservice, receiving monitoring data related to the microservice as the microservice is executed in the one or more containers in accordance with the configuration dataset for the microservice; and
transmitting the monitoring data to a user device associated with the microservice.

### Claim 12 (depends on 11)

The one or more non-transitory storage media of claim 11, the method further comprising
issuing one or more initial requests via the API for data regarding new microservices that have been instantiated or created,
the information being received in response to the one or more initial requests.

### Claim 13 (depends on 12)

The one or more non-transitory storage media of claim 12, the one or more initial requests including a first request to determine whether any new microservice has been created followed by a further request to gather details regarding the new microservice.

### Claim 14 (depends on 11)

The one or more non-transitory storage media of claim 11, the method further comprising:
receiving an identifier of a creator of the microservice; and
determining the user device based on the identifier.

### Claim 15 (depends on 11)

The one or more non-transitory storage media of claim 11, the one or more configurations indicating a criterion associated with a performance metric for generating an alert, routing information for the alert, an organization or a granularity of a report of the monitoring data, or access privilege information for the report.

### Claim 16 (depends on 11)

The one or more non-transitory storage media of claim 11,
the cluster manager being Kubernetes,
the one or more configurations leading to creating and storing one or more annotations, labels, or namespaces in a configuration file of a service managed by the cluster manager.

### Claim 17 (depends on 11)

The one or more non-transitory storage media of claim 11, the method further comprising:
generating a graphical user interface (GUI) for managing the one or more configurations;
sending instructions to access the GUI to a second user device associated with the microservice;
receiving an update to the one or more configurations via the GUI; and
submitting the update to the cluster manager via the API.

### Claim 18 (depends on 11)

The one or more non-transitory storage media of claim 11, the method further comprising:
managing a plurality of configuration templates of configurations for monitoring microservices;
receiving an instruction to select one or more configuration templates of the plurality of configuration templates; and
obtaining the one or more configurations from the one or more configuration templates.

### Claim 19 (depends on 11)

The one or more non-transitory storage media of claim 11, the method further comprising:
receiving contextual information related to the microservice for the monitoring data, including firewall rules, filtered ports, configurations for a virtual private network (VPN), or file access policies; and
transmitting the contextual information to the user device.

### Claim 20 (depends on 11)

The one or more non-transitory storage media of claim 11, the monitoring data including a computing performance metric for each container of the one or more containers.
