Inserting snapshot code into an application
First Claim
Patent Images
1. A system comprising:
- at least one processor; and
a debug viewer executing on the at least one processor, wherein the debug viewer;
retrieves a snapshot taken during execution of an application and containing local variable values and call stack data;
retrieves a performance metric obtained during execution of the application;
displays an interactive time line in a debug user interface, the interactive time line comprising both a first performance indicator derived from the performance metric and at least the snapshot, wherein the first performance indicator and the snapshot are rendered as interactive elements on an interactive timeline, such that a user is enabled to select the performance indicator of the snapshot to trigger a display of underlying data associated with the first performance indicator of the snapshot, when a corresponding interactive element is selected from the interactive timeline;
displays a field for receiving user input that is operable to define one or more conditions for a subsequent snapshot to be taken during execution of the application;
displays a field for receiving additional user input that is operable to define one or more snapshot definitions for data to be collected during the subsequent snapshot;
receives the user input for the one or more conditions and the additional user input for the one or more snapshot definitions;
prior to a subsequent execution of the application, automatically inserts a new snapshot source code into the application, wherein the new snapshot source code may be inserted by automatically traversing the application source code to identify the one or more conditions for a subsequent snapshot to be taken;
monitors the application for the one or more conditions during the subsequent execution of the application; and
detects, upon the subsequent execution of the application, that the one or more conditions has been satisfied, triggers the subsequent snapshot to collect data based on the one or more snapshot definitions.
2 Assignments
0 Petitions
Accused Products
Abstract
A debugging system may display snapshot information that may be collected in response to an event identified while an application executes. The debugging system may allow a user to browse the various data elements in the snapshot, and may allow the user to modify a snapshot configuration by including or excluding various data elements within the snapshot data. The user interface may have a mechanism for including or excluding data elements that may be presented during browsing, as well as options to change the events that may trigger a snapshot. The updated snapshot configuration may be saved for future execution when the event conditions are satisfied.
92 Citations
19 Claims
-
1. A system comprising:
-
at least one processor; and a debug viewer executing on the at least one processor, wherein the debug viewer; retrieves a snapshot taken during execution of an application and containing local variable values and call stack data; retrieves a performance metric obtained during execution of the application; displays an interactive time line in a debug user interface, the interactive time line comprising both a first performance indicator derived from the performance metric and at least the snapshot, wherein the first performance indicator and the snapshot are rendered as interactive elements on an interactive timeline, such that a user is enabled to select the performance indicator of the snapshot to trigger a display of underlying data associated with the first performance indicator of the snapshot, when a corresponding interactive element is selected from the interactive timeline; displays a field for receiving user input that is operable to define one or more conditions for a subsequent snapshot to be taken during execution of the application; displays a field for receiving additional user input that is operable to define one or more snapshot definitions for data to be collected during the subsequent snapshot; receives the user input for the one or more conditions and the additional user input for the one or more snapshot definitions; prior to a subsequent execution of the application, automatically inserts a new snapshot source code into the application, wherein the new snapshot source code may be inserted by automatically traversing the application source code to identify the one or more conditions for a subsequent snapshot to be taken; monitors the application for the one or more conditions during the subsequent execution of the application; and detects, upon the subsequent execution of the application, that the one or more conditions has been satisfied, triggers the subsequent snapshot to collect data based on the one or more snapshot definitions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer implemented method that is implemented by a debug viewer, the method comprising:
-
retrieving a snapshot taken during execution of an application and containing local variable values and call stack data; retrieving a performance metric obtained during execution of the application; displaying an interactive time line in a debug user interface, the interactive time line comprising both a first performance indicator derived from the performance metric and at least the snapshot, wherein the first performance indicator and the snapshot are rendered as interactive elements on an interactive timeline, such that a user is enabled to select the performance indicator of the snapshot to trigger a display of underlying data associated with the first performance indicator of the snapshot, when a corresponding interactive element is selected from the interactive timeline; displaying a field for receiving user input that is operable to define one or more conditions for a subsequent snapshot to be taken during execution of the application; displaying a field for receiving additional user input that is operable to define one or more snapshot definitions for data to be collected during the subsequent snapshot; receiving the user input for the one or more conditions and the additional user input for the one or more snapshot definition; prior to a subsequent execution of the application, automatically inserting a new snapshot source code into the application, wherein the new snapshot source code may be inserted by automatically traversing the application source code to identify the one or more conditions for a subsequent snapshot to be taken; monitoring the application for the one or more conditions during the subsequent execution of the application; and detecting, upon the subsequent execution of the application, that the one or more conditions has been satisfied, triggering the subsequent snapshot to collect data based on the one or more snapshot definitions. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
-
19. A computer program product comprising one or more computer-readable hardware storage devices having thereon one or more computer-executable instructions that are structured such that, when executed by one or more processors of a computing system, cause the computing system to perform a method for conditionally inserting custom code within an application, the method comprising:
-
retrieving a snapshot taken during execution of an application and containing local variable values and call stack data; retrieving a performance metric obtained during execution of the application; displaying an interactive time line in a debug user interface, the interactive time line comprising both a first performance indicator derived from the performance metric and at least the snapshot, wherein the first performance indicator and the snapshot are rendered as interactive elements on an interactive timeline, such that a user is enabled to select the performance indicator of the snapshot to trigger a display of underlying data associated with the first performance indicator of the snapshot, when a corresponding interactive element is selected from the interactive timeline; displaying a field for receiving user input that is operable to define one or more conditions for a subsequent snapshot to be taken during execution of the application; displaying a field for receiving additional user input that is operable to define one or more snapshot definitions for data to be collected during the subsequent snapshot; receiving the user input for the one or more conditions and the additional user input for the one or more snapshot definitions; prior to a subsequent execution of the application, automatically inserting a new source snapshot code into the application, wherein the new snapshot source code may be inserted by automatically traversing the application source code to identify the one or more conditions for a subsequent snapshot to be taken; monitoring the application for the one or more conditions during the subsequent execution of the application; and detecting, upon the subsequent execution of the application, that the one or more conditions has been satisfied, triggering the subsequent snapshot to collect data based on the one or more snapshot definitions.
-
Specification