Distributed Tracing Visualization for Microservice Bottleneck Identification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed, multitenant-capable full-text analytics and search engine environments, developers face challenges in identifying and pinpointing performance bottlenecks across microservices due to the complexity of manual tracing processes, which are time-consuming and often impractical for complex requests involving numerous services.

Innovation Solution

A system and method for distributed tracing data visualization and analysis provide a user interface that displays real-time traces of services involved in serving a request, including execution times and code paths, enabling users to quickly identify latency issues and optimize performance by linking services through a unique trace ID and integrating with ELASTICSEARCH for comprehensive performance monitoring.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If manual tracing processes are used to identify performance bottlenecks across microservices, then developers can obtain detailed service interaction data, but the process becomes time-consuming and impractical for complex requests involving numerous services

Engineering Contradiction:
Improveperformance bottleneck identification accuracyVSAvoidtracing process time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent creates visual copies and representations of service interaction data through distributed trace diagrams. Instead of manually examining raw data, the system generates visual copies showing service call graphs, timing information, and performance metrics that can be quickly analyzed to identify bottlenecks without time-consuming manual tracing processes

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces an intermediary visualization system that mediates between raw service interaction data and developer analysis. The distributed trace visualization acts as an intermediary layer that automatically processes, organizes, and presents performance data in an easily interpretable format, eliminating the need for developers to manually trace through complex service interactions

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If developers manually trace through complex requests involving numerous services, then they can identify performance issues, but the complexity of manual tracing processes makes it impractical

Engineering Contradiction:
Improveperformance issue identificationVSAvoidtracing process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments complex service interaction data into manageable visual components including individual service nodes, call graphs, and timing segments. Each service and its interactions are broken down into discrete visual elements that can be independently analyzed, reducing the perceived complexity of tracing through numerous services while maintaining reliable performance issue identification

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms flat, complex service interaction data into a multi-dimensional visual representation with hierarchical layers showing service calls, timing dimensions, and performance metrics. This dimensional transformation organizes complexity into structured visual layers that are easier to navigate and analyze, making the tracing process more practical while maintaining identification reliability

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Productivity

If a unified view of service interactions is provided through distributed tracing, then the time and effort required to diagnose issues is reduced, but the system complexity increases

Engineering Contradiction:
Improveissue diagnosis efficiencyVSAvoidmonitoring system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates a universal distributed tracing system that handles multiple types of service interactions, performance metrics, and visualization requirements through a single integrated platform. This multi-functional system can trace various service types, display different time perspectives, and present multiple views of performance data, reducing issue diagnosis time across diverse scenarios while consolidating system complexity into one unified tool

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11240126B2Distributed tracing for application performance monitoring
Publication Date: 2022.02.01 ELASTICSEARCH BV
  • US11240126B2 patent drawing
  • US11240126B2 patent drawing
  • US11240126B2 patent drawing

AI summary

Methods and systems for providing distributed tracing for application performance monitoring utilizing a distributed search engine in a microservices architecture. An example method comprises providing a user interface (UI) including a distributed trace indicating in real time the services invoked to serve an incoming HTTP request, the UI further including, in a single view, associated execution times for the services shown as a timeline waterfall. The distributed trace automatically propagates a trace ID to link services end-to-end in real time until a response to the request is served. The single view also provides graphs of response time information and the distribution of response times for the services. In response to selection of a particular element of the distribution, the UI provides respective timing details. The graphs and data shown on the single view can be filtered based on metadata input into a search field of the single view.