Global Profiling System for Cloud Transaction Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current profiling systems for cloud-based platforms struggle to track resource usage and performance across multiple threads and servers, leading to out-of-sequence events and making it difficult for developers to debug and optimize applications, as they lack a unified view across diverse instances.

Innovation Solution

The technology provides global profiling that tracks resource usage and performance across any part of a transaction as it passes between layers of the computing stack, combining results into a configurable profile view that represents the order of execution as if all applications and methods ran on one machine, using custom interpreters and logging engines to capture and store data across multiple servers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If profiling data is collected from multiple servers independently, then data collection is simple and decentralized, but events become out of sequence and global execution order cannot be determined

Engineering Contradiction:
Improvedecentralized data collectionVSAvoidexecution order information
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The patent introduces a centralized profiling server as an intermediary that receives profiling data from multiple distributed servers. This mediator collects, correlates, and reconstructs the global execution order by matching transaction IDs and method invocation sequences across servers, thereby preserving execution order information that would otherwise be lost in decentralized collection.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If detailed profiling data is collected across all services and servers, then comprehensive performance tracking is achieved, but system overhead and complexity increase

Engineering Contradiction:
Improveperformance tracking accuracyVSAvoidprofiling system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the profiling system into distinct functional components: profiling agents embedded in individual services that collect local data, a centralized profiling server that aggregates and correlates data, and a user interface layer for analysis. This segmentation allows detailed measurement precision at each level while managing overall system complexity through modular architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The centralized profiling server acts as an intermediary that manages the complexity of cross-server correlation. It receives structured profiling data from multiple sources, performs the complex task of reconstructing global execution order through transaction ID matching, and presents simplified results to users, thereby isolating complexity in the mediator layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of information

If profiling tracks every method invocation across multiple threads and servers, then complete resource usage visibility is obtained, but processing time and computational resources increase

Engineering Contradiction:
Improveresource usage visibilityVSAvoidprofiling processing time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent implements preliminary action by having profiling agents continuously collect and buffer method invocation data with associated transaction IDs and timestamps during application execution. This pre-captured structured data is then efficiently processed and correlated by the centralized server, reducing the time required for post-processing analysis while maintaining complete resource usage visibility.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10397309B2Systems and methods of implementing tracking of resource usage for a cloud-based system
Publication Date: 2019.08.27 SALESFORCE INC
  • US10397309B2 patent drawing
  • US10397309B2 patent drawing
  • US10397309B2 patent drawing

AI summary

The technology disclosed describes systems and methods for implementing global profiling to track resource usage and performance for multiple threads across multiple servers for a cloud-based system. This disclosed technology provides global profiling to track resource usage across any part of a transaction as it passes between layers of a computing stack regardless of the language being executed, on logically different virtual machines across multiple servers. After data collection stops, the disclosed technology combines the results into a configurable profile view that accurately represents the order of execution of applications and methods, as though they ran on one machine. The disclosed technology builds multiple formats of the data files for different display visualizations.