Virtual Machine Debugging Interface for Non-Intrusive Application Diagnostics

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing remote troubleshooting methods for software applications are intrusive and require modifications to the underlying application code or the use of intermediate clients, making non-intrusive monitoring of application operations elusive.

Innovation Solution

A system and method utilizing a virtual machine debugging interface to monitor and diagnose application operational problems by executing debug scripts within a virtual machine, allowing for remote analysis of application execution data without modifying the underlying code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If remote debugging agents or independent debugging scripts are used to diagnose application operational problems, then diagnostic capability is improved, but the monitoring process becomes intrusive requiring code modification or additional components

Engineering Contradiction:
Improvediagnostic capabilityVSAvoidintrusiveness
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent introduces a virtual machine as an intermediary layer between the technical support system and the application being diagnosed. The virtual machine executes the application and provides a debugging interface that allows remote monitoring without requiring modifications to the application code itself. This intermediary approach enables diagnostic capabilities while maintaining the original application's integrity and avoiding direct intrusion into the application's execution environment.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If subjective diagnostics by end users are used in remote support, then ease of operation is improved, but measurement precision of the problem deteriorates

Engineering Contradiction:
Improveease of supportVSAvoidproblem diagnosis accuracy
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The system enables end users to participate in the diagnostic process by executing applications within a virtual machine environment that automatically collects and transmits diagnostic data. The virtual machine's debugging interface autonomously gathers execution data, logs, and error information, reducing the need for users to perform complex manual diagnostics while still maintaining user involvement in the support process.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If virtual machine debugging interface is used to monitor application operation, then measurement precision of execution data is improved, but device complexity increases

Engineering Contradiction:
Improveexecution data accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The virtual machine serves multiple functions simultaneously: it executes the application being diagnosed, provides a debugging interface for data collection, logs execution information, and transmits diagnostic data to the technical support system. This multi-functionality consolidates what would otherwise require separate components into a single unified platform, reducing overall system complexity while maintaining high measurement precision through the virtual machine's inherent debugging capabilities.

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

Data Source

PatentUS7644312B2Virtual machine monitoring for application operation diagnostics
Publication Date: 2010.01.05 SERVICENOW INC
  • US7644312B2 patent drawing
  • US7644312B2 patent drawing
  • US7644312B2 patent drawing

AI summary

A method and system for monitoring the operation of an application in a virtual machine. The system can include a debug script processor programmed to command an application executing within the virtual machine according to instructions specified in a debug script. The system further can include a monitor component implemented according to a virtual machine debugging interface and coupled to the virtual machine. Importantly, the monitor component can have a configuration for collecting debug data produced in consequence of the application executing within the virtual machine according to the instructions specified in the debug script.