Instrumentation Analytics for Web Application Function Metrics

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional web analytics techniques, such as web server logfiles and page tagging, provide inaccurate and difficult-to-quantify web traffic reports, limiting their effectiveness in forecasting user access and optimizing website performance.

Innovation Solution

The implementation of an instrumentation analytics system that wraps website-based business applications with code instrumentation, providing metrics on function usage and proactive resource allocation, coupled with historical usage pattern analysis to predict and manage demand.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional web server logfiles and page tagging techniques are used to collect website usage data, then data collection is simple and straightforward, but the accuracy of web traffic reports is suspect and error margin is hard to quantify

Engineering Contradiction:
Improveaccuracy of web traffic reportsVSAvoidcomplexity of analytics system
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent introduces an instrumentation server as an intermediary component between the web application and the analytics system. This server receives instrumented code from developers, automatically injects analytics instrumentation into the application code, and manages the collection process. This intermediary handles the complexity of accurate data collection, allowing developers to achieve precise web traffic reporting without manually implementing complex tracking code throughout their application.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The instrumentation system enables the web application to self-report its usage data through automatically injected code. The instrumentation server configures the application to instrument itself with tracking code that collects function calls, page views, and user interactions. This self-service approach ensures consistent and accurate data collection without requiring external manual intervention or complex third-party integration, thereby improving measurement precision while managing system complexity.

Inventive Principle:
Principle #25Self-service

2Measurement precision

If code instrumentation is implemented to wrap business applications and collect function-level metrics, then measurement precision is improved, but device complexity increases due to additional instrumentation server and code injection mechanisms

Engineering Contradiction:
Improvefunction-level metrics accuracyVSAvoidinstrumentation server and code injection
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent extracts the complexity of code instrumentation into a separate, standalone instrumentation server that operates independently from the business application. This server handles all the complex tasks of parsing application code, identifying functions to instrument, injecting tracking code, and managing data collection. By taking out the instrumentation complexity from the application itself and placing it in a dedicated external service, the system achieves high measurement precision while the application remains relatively simple and maintainable.

Inventive Principle:
Principle #2Taking out (Extraction)

3Measurement precision

If detailed function-level metrics are collected through code instrumentation, then web analytics accuracy is enhanced, but loss of time occurs during code analysis and instrumentation injection

Engineering Contradiction:
Improveweb analytics accuracyVSAvoidcode analysis and instrumentation injection time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The instrumentation server performs preliminary analysis of the business application code during the deployment phase, before the application goes live. It automatically parses the codebase, identifies functions requiring instrumentation, and injects the necessary tracking code in advance. This preliminary action ensures that when the application runs in production, detailed function-level metrics are already being collected without any runtime overhead for code analysis, thus achieving high analytics accuracy while minimizing time loss to the actual application execution.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9619773B2Systems and methods for code instrumentation for analytics
Publication Date: 2017.04.11 SAP PORTALS ISRAEL
  • US9619773B2 patent drawing
  • US9619773B2 patent drawing
  • US9619773B2 patent drawing

AI summary

A system and method of inserting instrumentation analytics into a business application program that is written in a web browser language is disclosed. The method includes receiving at an instrumentation server the business application program, parsing the business application program to generate an abstract syntax tree, examining the abstract syntax tree to identify function calls within the business application program, and inserting an instrumentation framework into the business application program to create a modified business application program, the instrumentation framework monitoring function calls during operation of the modified business application program. A system to implement the method and a computer-readable medium are disclosed.