ML-Based Dependency Graph Focus for Microservice Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In large-scale microservices-based applications, debugging and identifying the root cause of issues is challenging due to the complexity of dependency graphs, which often result in overwhelming visual representations and inefficient user interaction, leading to increased debug time and application downtime.

Innovation Solution

A machine learning-based classification model is used to analyze nodes in a dependency graph, generating scores that indicate the likelihood of each compute resource being problematic, thereby focusing user attention on the most critical nodes and edges, reducing visual complexity and improving debugging efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If all nodes and edges in the dependency graph are displayed with equal detail, then complete information is provided, but visual complexity increases and debugging efficiency decreases

Engineering Contradiction:
Improveinformation completenessVSAvoidvisual complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent applies local quality by differentiating the visual representation of nodes and edges based on their problem likelihood scores. High-score nodes and edges receive enhanced visual focus (different coloring, sizing, or highlighting) while low-score elements are de-emphasized. This allows the system to maintain information completeness while reducing visual complexity through selective emphasis on critical areas.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The dependency graph is segmented into priority groups based on machine learning scores. The system divides nodes and edges into different visual categories (e.g., high-priority problematic areas vs. normal operating areas), allowing users to focus on critical segments first. This segmentation resolves the contradiction by organizing information hierarchically rather than presenting all elements equally.

Inventive Principle:
Principle #1Segmentation

2Reliability

If focus is provided to all nodes and edges, then no problematic resources are missed, but debug time increases due to overwhelming visual information

Engineering Contradiction:
Improveproblem detection accuracyVSAvoiddebug time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements partial action by providing visual focus selectively to only those nodes and edges that exceed a threshold score or rank in the top N problematic areas. Instead of emphasizing all elements equally, the system applies focus enhancement only to the most likely problematic regions, reducing the time users spend scanning irrelevant areas while maintaining reliable problem detection through the ML-based scoring system.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system replaces manual inspection mechanics with automated machine learning-based scoring and visual prioritization. The ML model automatically identifies problematic areas, and the system automatically applies visual focus to those areas, eliminating the need for users to manually evaluate each node and edge, thus reducing debug time while maintaining detection accuracy.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Loss of information

If visual focus is provided to many nodes and edges, then comprehensive coverage is achieved, but user attention is分散 and debugging efficiency decreases

Engineering Contradiction:
Improvecoverage completenessVSAvoiddebugging efficiency
Core Design Contradiction:
Loss of informationVSEase of operation

Solution Approach 1:

The patent changes the visual parameters (color intensity, node size, edge thickness) of dependency graph elements based on their problem likelihood scores. By dynamically adjusting these visual parameters, the system maintains comprehensive coverage of all nodes and edges in the underlying data structure while presenting a streamlined view to users that highlights only the most critical areas, thereby improving debugging efficiency without losing information completeness.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP4182796B1Machine learning-based techniques for providing focus to problematic compute resources represented via a dependency graph
Publication Date: 2024.04.24 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP4182796B1 patent drawingFigure 1
  • EP4182796B1 patent drawingFigure 2
  • EP4182796B1 patent drawingFigure 3

AI summary

Methods, systems, apparatuses, and computer-readable storage mediums are described for machine learning-based techniques for reducing the visual complexity of a dependency graph that is representative of an application or service. For example, the dependency graph is generated that comprises a plurality of nodes and edges. Each node represents a compute resource (e.g., a microservice) of the application or service. Each edge represents a dependency between nodes coupled thereto. A machine learning-based classification model analyzes each of the nodes to determine a likelihood that each of the nodes is a problematic compute resource. For instance, the classification model may output a score indicative of the likelihood that a particular compute resource is problematic. The nodes and/or edges having a score that exceed a predetermined threshold are provided focus via the dependency graph.