Correlating Microservice Logs and Traces for Distributed App Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Troubleshooting performance issues in distributed applications is challenging due to the large volumes of log messages generated by each microservice, requiring significant time and resources to identify root causes, which can lead to prolonged downtime and reputational damage.

Innovation Solution

A system that collects, stores, and correlates metrics, log messages, and traces from microservices using an open telemetry collector and forwarder, forming a common identifier for correlated data, and displaying interactive user interfaces to visualize the request flow and identify failures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If distributed applications use microservices architecture, then adaptability and ease of deployment are improved, but device complexity and difficulty of troubleshooting increase

Engineering Contradiction:
ImproveadaptabilityVSAvoidcomplexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the distributed application into independent microservices, each generating its own log messages. This segmentation enables independent deployment and adaptation of individual services while maintaining overall system functionality. The system collects and correlates log messages from multiple segmented sources to manage the complexity arising from this division.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary system that collects, aggregates, and correlates log messages from multiple microservices. This intermediary layer manages the complexity of distributed logging by providing a unified interface for troubleshooting while allowing microservices to remain independent and adaptable.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If distributed applications generate separate log files for each microservice, then measurement precision and troubleshooting detail are improved, but loss of time and productivity deteriorate

Engineering Contradiction:
ImproveprecisionVSAvoidtime
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent merges log messages from multiple microservices into a unified correlated view. By combining logs with common identifiers while preserving the precision of individual service logging, the system eliminates the time-consuming process of manually correlating separate log files, thus maintaining measurement precision while reducing troubleshooting time.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system performs preliminary correlation of log messages by attaching common identifiers to logs from different microservices as they are generated. This preliminary action prepares the data for efficient troubleshooting, so when issues arise, the correlated information is already available without requiring time-consuming manual correlation during incident response.

Inventive Principle:
Principle #10Preliminary action

3Difficulty of detecting and measuring

If distributed applications process large volumes of log messages, then measurement precision and detection capability are improved, but use of energy and productivity worsen

Engineering Contradiction:
Improvedetection capabilityVSAvoidenergy
Core Design Contradiction:
Difficulty of detecting and measuringVSUse of energy by moving object

Solution Approach 1:

The patent extracts and correlates only the relevant log messages that share common identifiers across microservices, rather than processing all log messages uniformly. This extraction approach maintains high detection capability for troubleshooting while reducing the overall processing load and energy consumption by focusing computational resources on correlated error traces.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS20240241764A1Automated system for collecting, storing, searching, and correlating metrics, log messages and traces of a distributed application
Publication Date: 2024.07.18 VMWARE INC
  • US20240241764A1 patent drawing
  • US20240241764A1 patent drawing
  • US20240241764A1 patent drawing

AI summary

The present disclosure relates to a system for monitoring execution of a distributed application running in a data center. The system includes a forwarder that runs in a tenant environment of the data center. The forwarder collects metrics, log messages, and spans output from microservices of the distributed application. The system includes an ingestion engine that receives the metrics, the log messages, and the spans output from the forwarder. The ingestion engine forms a trace from the spans, and stores the metrics, the log messages, and the trace with a common identifier in a database. The includes a user interface (“UT”) that displays the metrics, the log messages, and the trace in response to a user selection to the metrics, the log messages, and the trace via the UI.