Automatic Application Data Collection via Stack Trace Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing Application Performance Monitoring (APM) systems face challenges in automatically collecting data from applications for non-technical users, such as operations, business, and marketing departments, due to the complexity of understanding application architecture and instrumentation points.

Innovation Solution

The proposed solution involves determining a stack trace associated with business transactions, identifying relevant methods within the application, applying scoring heuristics to select methods for instrumentation, and configuring monitoring agents to instrument these methods at specific points, thereby generating application performance data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If APM systems manually instrument application code to collect performance data, then data collection precision is improved, but device complexity and time consumption increase significantly

Engineering Contradiction:
Improvedata collection precisionVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system performs self-service by automatically analyzing application code and determining instrumentation points without requiring manual intervention from developers or operators. The automated code analysis engine scans the application codebase, identifies relevant methods and classes, and generates instrumentation configurations autonomously, eliminating the need for manual code instrumentation while maintaining precise data collection.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces an intermediary layer consisting of the automated code analysis engine and instrumentation configuration generator that mediates between the APM system and the application code. This intermediary automatically translates business requirements into technical instrumentation points, serving as a bridge that eliminates the need for direct manual intervention while preserving measurement precision.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If APM systems manually instrument application code to collect performance data, then data collection precision is improved, but productivity is reduced due to lengthy processes

Engineering Contradiction:
Improvedata collection precisionVSAvoiddeployment productivity
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system performs self-service by automatically analyzing application code and determining instrumentation points without requiring manual intervention from developers or operators. The automated code analysis engine scans the application codebase, identifies relevant methods and classes, and generates instrumentation configurations autonomously, eliminating the need for manual code instrumentation while maintaining precise data collection.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary action by automatically analyzing the application codebase and pre-determining all necessary instrumentation points before data collection begins. The code analysis engine proactively identifies relevant methods, classes, and parameters, and pre-generates the instrumentation configuration, so that when deployment occurs, the system is already optimized and ready to collect precise data immediately without lengthy manual setup.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If non-technical users directly access application code to identify instrumentation points, then ease of operation is improved, but manufacturing precision deteriorates due to lack of technical knowledge

Engineering Contradiction:
Improveuser accessibilityVSAvoidinstrumentation precision
Core Design Contradiction:
Ease of operationVSManufacturing precision

Solution Approach 1:

The patent introduces an intermediary layer consisting of the automated code analysis engine and instrumentation configuration generator that mediates between the APM system and the application code. This intermediary automatically translates business requirements into technical instrumentation points, serving as a bridge that eliminates the need for direct manual intervention while preserving measurement precision.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs self-service by automatically analyzing application code and determining instrumentation points without requiring manual intervention from developers or operators. The automated code analysis engine scans the application codebase, identifies relevant methods and classes, and generates instrumentation configurations autonomously, eliminating the need for manual code instrumentation while maintaining precise data collection.

Inventive Principle:
Principle #25Self-service

4Measurement precision

If APM developers manually identify instrumentation points through communication with business departments, then measurement precision is improved, but loss of time increases significantly

Engineering Contradiction:
Improvedata collection precisionVSAvoiddeployment time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs self-service by automatically analyzing application code and determining instrumentation points without requiring manual intervention from developers or operators. The automated code analysis engine scans the application codebase, identifies relevant methods and classes, and generates instrumentation configurations autonomously, eliminating the need for manual code instrumentation while maintaining precise data collection.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary action by automatically analyzing the application codebase and pre-determining all necessary instrumentation points before data collection begins. The code analysis engine proactively identifies relevant methods, classes, and parameters, and pre-generates the instrumentation configuration, so that when deployment occurs, the system is already optimized and ready to collect precise data immediately without lengthy manual setup.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12314422B2Automatic application data collection for potentially insightful business values
Publication Date: 2025.05.27 CISCO TECHNOLOGY INC
  • US12314422B2 patent drawing
  • US12314422B2 patent drawing
  • US12314422B2 patent drawing

AI summary

In one embodiment, a method for automatic application data collection is disclosed. The method illustratively comprises determining a stack trace associated with one or more business transactions, wherein at least one application is configured to perform at least part of the one or more business transactions; identifying, based on the stack trace, one or more methods of the at least one application that were invoked during performance of the one or more business transactions; selecting, from the identified one or more methods, a set of the one or more methods by applying at least one scoring heuristic to the identified one or methods; and configuring one or more monitoring agents executing on the at least one application to instrument the selected set of the one or methods at one or more instrumentation points, wherein application performance data is generated by instrumentation of the one or more instrumentation points.