Log Service Identification via Source Code Digest Scoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In large enterprise systems and server farms with numerous services, identifying the service that generated events recorded in log files is challenging due to lack of proper indication of the originating service in the stored events.

Innovation Solution

A method and system that create digests of keywords from source code repositories, aggregate log strings into log groups, and use scoring to correlate digests with log groups, associating log groups with the source code repository corresponding to the highest score, thereby identifying the service that generated the events.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If log files alone are used to identify the service that generated events, then the identification process is simple, but the accuracy is low (25%)

Engineering Contradiction:
Improveaccuracy of service identificationVSAvoidcomplexity of identification system
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent combines log files with source code repositories to create a more accurate identification system. By merging these two data sources and using scoring controllers to correlate them, the system achieves 95% accuracy in identifying the service that generated events, compared to only 25% accuracy using log files alone.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces digests as an intermediary element that bridges log files and source code repositories. The digest controller creates digests from source code, and the scoring controller uses these digests to correlate with log files, enabling accurate service identification without directly comparing entire source code repositories with logs.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If source code repositories are used in conjunction with log files to identify services, then the accuracy improves to 95%, but the system complexity increases

Engineering Contradiction:
Improveaccuracy of service identificationVSAvoidtime for processing and correlation
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by having the digest controller pre-process source code repositories into digests before correlation is needed. This pre-processing step creates condensed representations of source code that can be quickly correlated with log files during event identification, reducing the time penalty associated with using source code repositories.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If the identifier of the storing service is recorded in log files, then the log storage process is simple, but the originating service cannot be properly identified in large enterprise systems

Engineering Contradiction:
Improveease of log storageVSAvoidloss of originating service information
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The patent implements feedback by using the correlation between digests and log files to identify the originating service. The scoring controller compares digests with log groups and uses the highest score to determine which service generated the events, providing feedback that recovers the lost originating service information without changing how logs are stored.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11928462B2System and method for associating logs to repositories using source code
Publication Date: 2024.03.12 INTUIT INC
  • US11928462B2 patent drawing
  • US11928462B2 patent drawing
  • US11928462B2 patent drawing

AI summary

A method includes receiving event strings from source code repositories, creating, for the source code repositories, digests of keywords, receiving log strings, and aggregating the log strings into a log group. The method further includes comparing the digests to the log group to generate scores, whereby the scores correlate the digests to the log group. The method further includes selecting a source code repository from the source code repositories according to the scores, and associating the log group to a service corresponding to the source code repository, where the source code repository corresponds to the digest with a highest score.