IP Library Granted Patent US 12,026,086
Granted Patent B2
US 12,026,086 · App. 17/851,521 · Granted Jul 2, 2024

Debugging operator errors in a distributed computing environment

Inventors: Laura Fitzgerald (Waterford, IE); Leigh Griffin (Waterford, IE)
Assignee: RED HAT, INC.
G06F11/3664G06F8/33G06F11/362
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 12,026,086
App. No.
17/851,521
Granted
Jul 2, 2024
Kind
B2
Abstract

Some examples described herein relate to debugging operator errors in a distributed computing environment. In one example, a system can identify a custom resource managed by an operator in a distributed computing environment. Based on identifying the custom resource, the system can initiate a monitoring process involving detecting events associated with the custom resource. In response to detecting the events, the system can generate log data indicating one or more operations performed by the operator to trigger the events. The system can then store the log data in a debugging log for use in detecting a functional error related to the operator.

Claims (68)

1. A non-transitory computer-readable medium comprising program code for a monitoring operator, wherein the monitoring operator is executable by one or more processors to:

identify a custom resource managed by an operator in a distributed computing environment, wherein the custom resource is deployed in the distributed computing environment, and wherein the operator is software deployed in the distributed computing environment, the operator being different from the monitoring operator;

based on identifying the custom resource, initiate a monitoring process for automatically detecting events involving the custom resource;

in response to automatically detecting the events involving the custom resource:

determine one or more operations performed by the operator to trigger the events; and

generate log data indicating the one or more operations performed by the operator to trigger the events; and

store the log data in a debugging log; and

automatically analyze the debugging log to detect a functional error related to the operator.

2. The non-transitory computer-readable medium of claim 1 , further comprising program code that is executable by the one or more processors for causing the one or more processors to:

deploy the operator in the distributed computing environment, the operator being executable to instantiate and monitor the custom resource in the distributed computing environment;

deploy the monitoring operator in the distributed computing environment separately from the operator and the custom resource; and

subscribe the custom resource with the monitoring operator to initiate the monitoring process.

3. The non-transitory computer-readable medium of claim 1 , wherein the operator is a first operator, the custom resource is a first custom resource, the monitoring process is a first monitoring process, and further comprising program code that is executable by the one or more processors for causing the one or more processors to:

identify a second custom resource monitored by a second operator in the distributed computing environment;

determine that the second custom resource has a predefined hierarchical relationship with respect to the first custom resource;

based on determining that the second custom resource has the predefined hierarchical relationship with respect to the first custom resource, initiate a second monitoring process for detecting other events resulting in functional changes to the second custom resource;

in response to detecting the other events, generate other log data indicating one or more operations performed by the second operator to trigger the other events; and

store the other log data in the debugging log for use in debugging a functional error related to the second operator.

4. The non-transitory computer-readable medium of claim 3 , wherein the predefined hierarchical relationship between the first custom resource and the second custom resource includes a dependency relationship in which the first custom resource depends on the second custom resource.

5. The non-transitory computer-readable medium of claim 3 , wherein the predefined hierarchical relationship is defined in a definition file associated with the first custom resource or the second custom resource, and further comprising program code that is executable by the one or more processors for causing the one or more processors to identify the predefined hierarchical relationship by analyzing the definition file.

6. The non-transitory computer-readable medium of claim 5 , wherein the definition file includes configuration data for the first custom resource or the second custom resource.

7. The non-transitory computer-readable medium of claim 1 , further comprising program code that is executable by the one or more processors for causing the one or more processors to detect an anomaly associated with the operator by analyzing the debugging log.

8. The non-transitory computer-readable medium of claim 1 , further comprising program code that is executable by the one or more processors for causing the one or more processors to:

based on initiating the monitoring process, update an attribute field of the custom resource to indicate that the monitoring operator is monitoring the custom resource.

9. The non-transitory computer-readable medium of claim 1 , further comprising program code that is executable by the one or more processors for causing the one or more processors to:

determine that a computing resource is associated with the custom resource in the distributed computing environment;

based on determining that the computing resource is associated with the custom resource, detect an event associated with an interaction between the custom resource and the computing resource in the distributed computing environment, the event being one of the events monitored during the monitoring process; and

generate the log data based on the event.

10. The non-transitory computer-readable medium of claim 9 , further comprising program code that is executable by the one or more processors for causing the one or more processors to determine that the computing resource is associated with the custom resource by analyzing a definition file for the custom resource, the definition file including configuration data for the custom resource and describing the computing resource.

11. The non-transitory computer-readable medium of claim 1 , wherein:

the custom resource is an object in the distributed computing environment;

the operator is deployed by an operator lifecycle manager of the distributed computing environment based on a definition file corresponding to the operator; and

the operator is executable to automatically perform a reconciliation operation in relation to the custom resource.

12. A method comprising:

identifying, by a processor, a custom resource managed by an operator in a distributed computing environment, wherein the custom resource is deployed in the distributed computing environment, and wherein the operator is software deployed in the distributed computing environment;

based on identifying the custom resource, initiating, by the processor, a monitoring process for automatically detecting events involving the custom resource;

in response to automatically detecting the events involving the custom resource:

determining, by the processor, one or more operations performed by the operator to trigger the events; and

generating, by the processor, log data indicating the one or more operations performed by the operator to trigger the events; and

storing, by the processor, the log data in a debugging log; and

analyzing the debugging log to detect a functional error related to the operator.

13. The method of claim 12 , further comprising:

deploying the operator in the distributed computing environment, the operator being executable to instantiate and monitor the custom resource in the distributed computing environment;

deploying a monitoring operator in the distributed computing environment separately from the operator and the custom resource; and

subscribe the custom resource with the monitoring operator, wherein subscribing the custom resource to the monitoring operator causes the monitoring operator to initiate the monitoring process.

14. The method of claim 12 , wherein the operator is a first operator, the custom resource is a first custom resource, the monitoring process is a first monitoring process, and further comprising:

identifying a second custom resource monitored by a second operator in the distributed computing environment;

determining that the second custom resource has a predefined hierarchical relationship with respect to the first custom resource;

based on determining that the second custom resource has the predefined hierarchical relationship with respect to the first custom resource, initiating a second monitoring process for detecting other events resulting in functional changes to the second custom resource;

in response to detecting the other events, generating other log data indicating one or more operations performed by the second operator to trigger the other events; and

storing the other log data in the debugging log for use in debugging a functional error related to the second operator.

15. The method of claim 14 , wherein the predefined hierarchical relationship is defined in a definition file associated with the first custom resource or the second custom resource, and further comprising identifying the predefined hierarchical relationship by analyzing the definition file.

16. The method of claim 15 , wherein the definition file includes configuration data for the first custom resource or the second custom resource.

17. The method of claim 14 , wherein the predefined hierarchical relationship between the first custom resource and the second custom resource includes a dependency relationship in which the first custom resource depends on the second custom resource.

18. The method of claim 12 , further comprising detecting an anomaly associated with the operator by analyzing the debugging log.

19. The method of claim 12 , further comprising:

determining that a computing resource is associated with the custom resource in the distributed computing environment;

based on determining that the computing resource is associated with the custom resource, detecting an event associated with an interaction between the custom resource and the computing resource in the distributed computing environment, the event being one of the events monitored during the monitoring process; and

generating the log data based on the event.

20. A system comprising:

one or more processors; and

one or more memories including instructions executable by the one or more processors for causing the one or more processors to:

identify a custom resource managed by an operator in a distributed computing environment, wherein the custom resource is deployed in the distributed computing environment, and wherein the operator is software deployed in the distributed computing environment;

based on identifying the custom resource, initiate a monitoring process for automatically detecting events involving the custom resource;

in response to automatically detecting the events involving the custom resource;

determine one or more operations performed by the operator to trigger the events; and

generate log data indicating the one or more operations performed by the operator to trigger the events; and

store the log data in a debugging log for use in detecting a functional error related to the operator.

Assignments (2)
CHANGE OF NAME Recorded Mar 3, 2026
From: RED HAT, INC.
To: RED HAT, LLC
Reel/Frame 074913/0759 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2022
From: FITZGERALD, LAURA; GRIFFIN, LEIGH
To: RED HAT, INC.
Reel/Frame 060337/0295 →