System Call Tracing for Distributed Software Troubleshooting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed software applications' complexity and numerous interactions among services make troubleshooting challenging, requiring administrators to manually analyze extensive error logs, which is time-consuming and error-prone.

Innovation Solution

A system that analyzes tracing data from software tracing tools to identify sequences of system calls leading to problems, outputting these sequences to administrators, allowing for faster identification and resolution of issues without modifying the software services.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If administrators manually analyze extensive error logs to troubleshoot distributed software applications, then they can identify problems, but the process is time-consuming and error-prone

Engineering Contradiction:
Improveproblem identification accuracyVSAvoidtroubleshooting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system automatically analyzes tracing data and generates troubleshooting sequences without requiring administrator intervention in the analysis process. The automated system serves itself by collecting traces, identifying problematic sequences, and presenting them to administrators, thereby eliminating manual log analysis while maintaining accurate problem identification.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the mechanical process of manual log analysis with an automated computer system that collects tracing data, identifies problematic sequences, and generates troubleshooting information. This substitution eliminates human error and time consumption in the analysis process while maintaining reliable problem identification.

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

2Reliability

If distributed software applications are deployed individually as microservices, then scalability and robustness improve, but the complexity and number of interactions increase

Engineering Contradiction:
Improvesystem robustnessVSAvoidnumber of service interactions
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system introduces tracing data as an intermediary that captures interactions between microservices. Instead of administrators directly analyzing complex service interactions, the tracing data serves as a mediator that simplifies and represents these interactions, making the system manageable while preserving the benefits of microservice architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the complex interaction data into individual service traces and identifies specific problematic sequences within the larger system. By dividing the complex interaction graph into manageable trace segments, the system maintains the modularity of microservices while enabling systematic analysis of interactions.

Inventive Principle:
Principle #1Segmentation

3Reliability

If administrators manually analyze thousands of error log entries, then they can identify problems, but the process becomes tedious and subjective

Engineering Contradiction:
Improveproblem detection accuracyVSAvoidtroubleshooting operation simplicity
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent replaces the tedious manual analysis process with an automated computer system that objectively processes tracing data. The system systematically identifies problematic sequences through algorithmic analysis rather than subjective human judgment, eliminating variability in troubleshooting while maintaining high detection accuracy.

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

Solution Approach 2:

The system provides feedback by automatically generating and presenting troubleshooting sequences to administrators. This feedback mechanism guides administrators directly to the problematic areas without requiring them to manually search through extensive logs, making the process objective and simple while maintaining accurate problem detection.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11966323B2Troubleshooting software services based on system calls
Publication Date: 2024.04.23 RED HAT INC
  • US11966323B2 patent drawing
  • US11966323B2 patent drawing
  • US11966323B2 patent drawing

AI summary

System calls can be used to troubleshoot problems with software services. For example, a system can receive tracing data indicating system calls executed by a group of software services. The system can analyze parameters of the system calls described in the tracing data to identify relationships between the system calls. The system can determine a sequence of system calls between a predefined starting event and a predefined ending event based on the relationships between the system calls. The system can then generate an output to a user indicating the sequence of system calls. The output can be used by the user to troubleshoot a problem associated with executing the plurality of software services.