Application Performance Evaluation via Selective Call Sampling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for evaluating application performance, such as user-based logging, across-the-board logging, and 'black box logging, are inadequate as they either provide insufficient insights, impact system performance, or lack credibility due to network latency, making it difficult to troubleshoot issues and affecting user experience.

Innovation Solution

A method and system that utilize a Measurement Marker Algorithm to mark workflow transactions as traceable, track and store raw Call Metrics in intermediate memory, periodically truncate and aggregate them for predefined intervals, and store aggregated metrics in permanent memory, allowing for non-intrusive performance evaluation without affecting overall system performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If across the board logging is implemented to capture all calls for comprehensive performance evaluation, then measurement precision is improved, but system performance deteriorates and data volume becomes unmanageable

Engineering Contradiction:
Improveperformance measurement completenessVSAvoidsystem performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent implements selective sampling of calls for logging rather than capturing all calls. A sampling rate parameter controls what percentage of calls are tracked, allowing the system to obtain sufficient performance data while reducing the logging burden to manageable levels that preserve system performance.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent segments the logging process into multiple components: call selection based on sampling criteria, metric extraction for selected calls, and hierarchical storage structures. This segmentation allows the system to process only relevant calls while maintaining comprehensive performance evaluation capabilities.

Inventive Principle:
Principle #1Segmentation

2Productivity

If user-based logging is used to record calls for selected users, then system performance impact is reduced, but measurement precision deteriorates due to insufficient user base coverage

Engineering Contradiction:
Improvesystem performanceVSAvoidperformance evaluation coverage
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent creates a universal sampling mechanism that can evaluate performance across the entire user base by statistically sampling calls from multiple users. This approach provides comprehensive performance insights for the whole system rather than being limited to selected users, while still maintaining acceptable system performance through controlled sampling rates.

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

3Ease of operation

If black box logging with 3rd party services is implemented to replicate user behavior, then ease of operation is improved, but measurement precision deteriorates due to network latency and workflow differences

Engineering Contradiction:
Improveimplementation simplicityVSAvoidperformance measurement accuracy
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The patent introduces an intermediary sampling component that sits within the application architecture to capture call metrics directly from the source. This intermediary mechanism eliminates network latency issues by collecting data locally and ensures accurate representation of actual application performance by measuring real calls rather than replicated simulations.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If all calls are logged for troubleshooting purposes, then reliability is improved, but loss of time increases due to large data volume processing

Engineering Contradiction:
Improvetroubleshooting capabilityVSAvoiddata processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts only the essential performance metrics from selected calls using a defined sampling rate, rather than logging complete call data. This extraction approach provides sufficient information for troubleshooting and performance analysis while dramatically reducing the data volume that requires processing and storage.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9886364B1System and method for evaluating application performance
Publication Date: 2018.02.06 ALLSCRIPTS SOFTWARE LLC
  • US9886364B1 patent drawing
  • US9886364B1 patent drawing
  • US9886364B1 patent drawing

AI summary

A computer readable medium storing a computer program for providing a method for evaluating the performance of a software application, the computer program executable by at least one or the one or more processors. The computer program comprising a set of instructions for receiving an indication of the initiation of a workflow transaction in an Application, determining whether the workflow transaction is to be marked as a traceable transaction based on a Measurement Marker Algorithm, tracking the performance of operations executed for the workflow transaction, and storing raw Call Metrics based on the tracked performance in an Intermediate memory.