Transaction Tracing via Intermediary Correlation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current monitoring systems for distributed transactions are inadequate as they often require source code modifications, depend on synchronized clocks, or fail to reconstruct the exact sequence of method invocations across different servers, leading to inefficiencies and inaccuracies in performance analysis.

Innovation Solution

A system that traces distributed transactions across heterogeneous environments without modifying source code, using correlation information to identify transactions and servers, and stores this information in a way that is independent of method invocation nesting levels, enabling real-time correlation and handling of blocked transactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If conventional monitoring tools are used to trace distributed transactions, then transaction visibility is improved, but monitoring overhead increases and source code modifications are required

Engineering Contradiction:
Improvetransaction visibilityVSAvoidmonitoring overhead
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary component (transaction trace system) that sits between the distributed transaction components and the monitoring tools. This intermediary captures transaction trace information passively without requiring source code modifications, thereby improving transaction visibility while minimizing monitoring overhead through non-intrusive interception of transaction events.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system creates copies of transaction trace information from distributed transactions and stores them in a centralized location. This allows monitoring tools to analyze transaction data without directly interfering with the original transaction execution, thus maintaining visibility while reducing overhead on the production system.

Inventive Principle:
Principle #26Copying

2Loss of information

If distributed transaction tracing is implemented across multiple servers, then end-to-end transaction visibility is improved, but correlation accuracy deteriorates due to clock synchronization issues

Engineering Contradiction:
Improveend-to-end transaction visibilityVSAvoidcorrelation accuracy
Core Design Contradiction:
Loss of informationVSMeasurement precision

Solution Approach 1:

The patent segments the distributed transaction tracing into independent units with unique correlation identifiers. Each server segment captures and tags transaction events with these identifiers, allowing accurate correlation across servers without relying on clock synchronization. The segmentation isolates timing dependencies to individual servers while maintaining global transaction visibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system replaces the mechanical clock synchronization mechanism with an identifier-based correlation mechanism. Instead of using synchronized timestamps from mechanical clocks, the patent uses unique transaction identifiers and correlation tokens that are passed through the distributed system, eliminating the need for clock synchronization while maintaining correlation accuracy.

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

3Loss of information

If memory allocation is increased to track nested method invocations, then transaction tracing completeness is improved, but system stability deteriorates due to unpredictable memory consumption

Engineering Contradiction:
Improvetransaction tracing completenessVSAvoidsystem stability
Core Design Contradiction:
Loss of informationVSStability of the object's composition

Solution Approach 1:

The patent implements periodic sampling of transaction trace information at defined intervals and depth levels. Instead of continuously allocating memory to track all nested method invocations, the system periodically captures transaction states at sampling points, reducing memory consumption while maintaining sufficient tracing completeness through strategic sampling of critical transaction phases.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system dynamically adjusts tracing parameters such as sampling rate, maximum nesting depth, and detail level based on system conditions and transaction importance. This allows the transaction tracing completeness to be maintained for critical paths while reducing memory allocation for less important transactions, thereby stabilizing overall system memory consumption.

Inventive Principle:
Principle #35Parameter changes

4Use of energy by moving object

If post-mortem analysis is used to reduce monitoring overhead, then monitoring resource consumption is improved, but real-time transaction analysis capability deteriorates

Engineering Contradiction:
Improvemonitoring resource consumptionVSAvoidreal-time analysis capability
Core Design Contradiction:
Use of energy by moving objectVSLoss of time

Solution Approach 1:

The patent performs preliminary light-weight capture and tagging of transaction trace information during transaction execution with minimal resource consumption. The actual heavy analysis is then performed on the pre-captured data, allowing real-time monitoring with reduced overhead since the data preparation work is done in advance during normal transaction flow.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system applies partial monitoring to all transactions (capturing only essential trace information) and excessive detailed analysis only to selected transactions of interest. This selective approach reduces overall monitoring resource consumption while maintaining real-time analysis capability for critical transactions through focused deep-dive analysis.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9811362B2Method and system for transaction controlled sampling of distributed heterogeneous transactions without source code modifications
Publication Date: 2017.11.07 DYNATRACE LLC
  • US9811362B2 patent drawing
  • US9811362B2 patent drawing
  • US9811362B2 patent drawing

AI summary

A system and method for tracing individual transactions on method call granularity is disclosed. The system uses instrumentation based transaction tracing mechanisms to enhance thread call stack sampling mechanisms by a) only sampling threads executing monitored transactions while execution is ongoing b) tagging sampled call stacks with a transaction identifier for correlation of sampled call stacks with instrumentation bases tracing data. The combination of instrumentation based tracing with thread call stack sampling reduces sampling generated overhead by only sampling relevant thread, and reduces instrumentation generated overhead because it allows reducing instrumentation.