IP Library Granted Patent US 11,086,767
Granted Patent B2
US 11,086,767 · App. 16/750,101 · Granted Aug 10, 2021

Intelligent generation of log messages by a SAAS offering in a continuous pipeline

Inventors: Kalpesh Sharma (Bangalore, IN); Mahantesh Meti (Bangalore, IN); Albee Jhoney (Bangalore, IN)
Assignee: International Business Machines Corporation
G06F11/3692G06F11/3676G06F11/3688
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 11,086,767
App. No.
16/750,101
Granted
Aug 10, 2021
Kind
B2
Abstract

An adaptive log system and method may include calculating a complexity of the change set, comparing a current log message with a previous log message created as a result of the test operation during a previous run, to determine a log difference between the current log message and the previous log message, determining a module sensitivity for each module of the change set, identifying a trust level of a developer of the change set, dynamically adjusting log level settings, and analyzing a serviceability of the change set made to the continuous delivery pipeline based on: (i) the complexity of the change set, (ii) the log difference, (iii) the module sensitivity of each module of the change set, and (iv) the trust level of the developer, wherein, as a function of the analyzing, the sufficiency of log messages for each module of the change set is determined.

Claims (29)

1. A method for providing feedback to developers of a sufficiency of log messages associated with a change set made to a continuous delivery pipeline in a Software as a Service (SaaS) environment, the method comprising:

analyzing, by a processor of a computing system, a serviceability of the change set made to the continuous delivery pipeline in the SaaS environment based on a combination of: (i) a complexity of the change set, (ii) a log difference between a first log message and a second log message, (iii) a module sensitivity of each module of the change set, (iv) a stability of changes that were recently introduced in the change set, and (v) a trust level of a developer of the change set, wherein, as a function of the analyzing, the sufficiency of the log messages for each module of the change set is determined; and

removing, by the processor of the computing system, the change set from the continuous delivery pipeline in the SaaS environment based on the sufficiency of the log messages for each module of the change set.

2. The method of claim 1 , further comprising: determining, by the processor of the computing system, a log level for each module of the change set based on a combination of: (i) the complexity of the change set, (ii) the log difference between the first log message and the second log message, (iii) the module sensitivity of each module of the change set, and (iv) the trust level of the developer of the change set.

3. The method of claim 1 , wherein a log level determination is further based on a change stability factor, and wherein the change stability factor is calculated over time based on a number of problems occurring with the change set and an effect on an initial log level over time.

4. The method of claim 3 , wherein a log level for each module of the change set is dynamically configured to return log messages of the continuous delivery pipeline in the SaaS environment for a specific log level.

5. The method of claim 1 , further comprising: calculating, by the processor of the computing system, the complexity of the change set made to the continuous delivery pipeline in the SaaS environment by identifying, by the processor of the computing system, modules related to the change set, a developer identification, a type of file that was changed, a kilo of lines of code (KLOC) of the change set, a number of files changed by the change set, a number of work items, and a recency of changes of the change set.

6. The method of claim 1 , further comprising: identifying, by the processor of the computing system, the trust level of the developer of the change set including extracting a contribution of the developer of the change set, an experience level of the developer of the change set, and a number of issues reported against the developer of the change set.

7. The method of claim 1 , further comprising: determining, by the processor of the computing system, the module sensitivity for each module of the change set including: (i) extracting, by the processor of the computing system, information about a defect and a field problem history, a number of developers that contributed to the module, and (ii) calculating, by the processor of the computing system, a module complexity based on a number of files affected by the change set, a size of the files affected by the change set, and a number of cross-references to the files affected by the change set.

8. A computer system, comprising:

a processor;

a memory device coupled to the processor; and

a computer readable hardware storage device coupled to the processor, wherein the computer readable hardware storage device contains program code executable by the processor via the memory device to implement a method for providing feedback to developers of a sufficiency of log messages associated with a change set made to a continuous delivery pipeline in a Software as a Service (SaaS) environment, the method comprising:

analyzing, by the processor of the computer system, a serviceability of the change set made to the continuous delivery pipeline in the SaaS environment based on a combination of: (i) a complexity of the change set, (ii) a log difference between a first log message and a second log message, (iii) a module sensitivity of each module of the change set, fly) a stability of changes that were recently introduced in the change set, and (v) a trust level of a developer of the change set, wherein, as a function of the analyzing, the sufficiency of the log messages for each module of the change set is determined; and

removing, by the processor of the computing system, the change set from the continuous delivery pipeline in the SaaS environment based on the sufficiency of the log messages for each module of the change set.

9. The computer system of claim 8 , further comprising: determining, by the processor of the computer system, a log level for each module of the change set based on a combination of: (i) the complexity of the change set, (ii) the log difference between the first log message and the second log message, (iii) the module sensitivity of each module of the change set, and (iv) the trust level of the developer of the change set.

10. The computer system of claim 8 , wherein a log level determination is further based on a change stability factor, and wherein the change stability factor is calculated over time based on a number of problems occurring with the change set and an effect on an initial log level over time.

11. The computer system of claim 10 , wherein a log level for each module of the change set is dynamically configured to return log messages of the continuous delivery pipeline in the SaaS environment for a specific log level.

12. The computer system of claim 8 , further comprising calculating, by the processor of the computer system, the complexity of the change set made to the continuous delivery pipeline in the SaaS environment by identifying, by the processor of the computer system, modules related to the change set, a developer identification, a type of file that was changed, a kilo of lines of code (KLOC) of the change set, a number of files changed by the change set, a number of work items, and a recency of changes of the change set.

13. The computer system of claim 8 , further comprising: identifying, by the processor of the computer system, the trust level of the developer of the change set including extracting a contribution of the developer of the change set, an experience level of the developer of the change set, and a number of issues reported against the developer of the change set.

14. The computer system of claim 8 , further comprising: determining, by the processor of the computer system, the module sensitivity for each module of the change set including: (i) extracting, by the processor of the computer system, information about a defect and a field problem history, a number of developers that contributed to the module, and (ii) calculating, by the processor of the computer system, a module complexity based on a number of files affected by the change set, a size of the files affected by the change set, and a number of cross-references to the files affected by the change set.

15. A computer program product comprising a computer readable hardware storage device storing computer readable program code, the computer readable program code comprising an algorithm that when executed by a processor of a computing system implements a method for providing feedback to developers of a sufficiency of log messages associated with a change set made to a continuous delivery pipeline in a Software as a Service (SaaS) environment, the method comprising:

analyzing, by a processor of a computing system, a serviceability of the change set made to the continuous delivery pipeline in the SaaS environment based on a combination of: (i) a complexity of the change set, (ii) a log difference between a first log message and a second log message, (iii) a module sensitivity of each module of the change set, civ) a stability of changes that were recently introduced in the change set, and (v) a trust level of a developer of the change set, wherein, as a function of the analyzing, the sufficiency of the log messages for each module of the change set is determined; and

removing, by the processor of the computing system, the change set from the continuous delivery pipeline in the SaaS environment based on the sufficiency of the log messages for each module of the change set.

16. The computer program product of claim 15 , further comprising: determining, by the processor of the computing system, a log level for each module of the change set based on a combination of: (i) the complexity of the change set, (ii) the log difference between the first log message and the second log message, (iii) the module sensitivity of each module of the change set, and (iv) the trust level of the developer of the change set.

17. The computer program product of claim 15 , wherein a log level determination is further based on a change stability factor, wherein the change stability factor is calculated over time based on a number of problems occurring with the change set and an effect on an initial log level over time, and wherein a log level for each module of the change set is dynamically configured to return log messages of the continuous delivery pipeline in the SaaS environment for a specific log level.

18. The computer program product of claim 15 , further comprising calculating, by the processor of the computing system, the complexity of the change set made to the continuous delivery pipeline in the SaaS environment by identifying, by the processor of the computing system, modules related to the change set, a developer identification, a type of file that was changed, a kilo of lines of code (KLOC) of the change set, a number of files changed by the change set, a number of work items, and a recency of changes of the change set.

19. The computer program product of claim 15 , further comprising: identifying, by the processor of the computing system, the trust level of the developer of the change set including extracting a contribution of the developer of the change set, an experience level of the developer of the change set, and a number of issues reported against the developer of the change set.

20. The computer program product of claim 15 , further comprising: determining, by the processor of the computing system, the module sensitivity for each module of the change set including: (i) extracting, by the processor of the computing system, information about a defect and a field problem history, a number of developers that contributed to the module, and (ii) calculating, by the processor of the computing system, a module complexity based on a number of files affected by the change set, a size of the files affected by the change set, and a number of cross-references to the files affected by the change set.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 057885/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2020
From: SHARMA, KALPESH; METI, MAHANTESH; JHONEY, ALBEE
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 051593/0454 →
Continuity (2)
Continuation 15924827 · Mar 19, 2018
Related Publication 20200159652A1 · May 21, 2020