Enriched Log Viewer for Automated Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Debugging processes are inefficient and resource-intensive due to the need to save and analyze extensive execution information, often requiring significant human intervention and memory resources, especially when dealing with dynamic objects and complex program flows.

Innovation Solution

A method and system for enriched log viewing that automatically analyzes program code to identify and record variables and their values at specific execution instances, presenting them in a message log, allowing for selective recording of dynamic object fields up to a predetermined depth, thereby reducing the need for extensive data storage and manual intervention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If extensive execution information is saved and analyzed during debugging, then debugging completeness is improved, but computational resource usage and time increase significantly

Engineering Contradiction:
Improvedebugging completenessVSAvoiddebugging time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts only the essential debugging information (message logs and associated variable values) from the complete execution information. Instead of saving and analyzing all execution data, the system selectively captures message instances and their contextual variables, significantly reducing the volume of data that needs to be processed and analyzed while maintaining debugging effectiveness.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The debugging information is segmented into discrete message instances, each associated with specific variable values at the time of the message. This segmentation allows the system to process and analyze individual message contexts independently rather than handling massive amounts of continuous execution data, reducing computational overhead and improving debugging efficiency.

Inventive Principle:
Principle #1Segmentation

2Reliability

If extensive execution information is saved and analyzed during debugging, then debugging completeness is improved, but memory resources increase significantly

Engineering Contradiction:
Improvedebugging completenessVSAvoidmemory resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system extracts only the necessary debugging data (message logs and associated variable values) from the complete execution state. By capturing only message instances and their contextual variables rather than entire program states, the memory footprint is dramatically reduced while preserving the essential information needed for effective debugging.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies partial action by recording only the subset of execution information that is actually useful for debugging (message logs and their variable contexts) rather than capturing excessive complete execution data. This selective recording approach reduces memory consumption while maintaining sufficient debugging capability.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If manual intervention is required for data collection and analysis during debugging, then debugging precision is improved, but ease of operation deteriorates

Engineering Contradiction:
Improvedebugging precisionVSAvoidease of debugging
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The debugging system performs automatic analysis of message logs and associated variable values without requiring manual data collection. The system self-services by automatically capturing message instances, extracting relevant variable information, and presenting it in an organized format, thereby maintaining debugging precision while significantly improving ease of operation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary automatic analysis and organization of debugging data before the user needs to examine it. By pre-processing message logs and associating variable values in advance, the system eliminates the need for manual data collection and preparation, allowing users to directly analyze prepared debugging information with both precision and convenience.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9244814B1Enriched log viewer
Publication Date: 2016.01.26 CADENCE DESIGN SYST INC
  • US9244814B1 patent drawing
  • US9244814B1 patent drawing
  • US9244814B1 patent drawing

AI summary

A computer implemented method of debugging with enriched message log capability may include, for each instance during an execution of a program to be debugged in which a message is issued, automatically analyzing the program code included in a scope of the program relating to the message to identify one or a plurality of variables. The method may also include saving on a non-transitory computer readable storage medium a value at that instance of each of said one or a plurality of variables. The method may further include causing a message log that includes the message to be presented on a display device, associating the value of each said one or a plurality of variables with the message.