Dynamic diagnostic code instrumentation over a historic program execution
US-2020242007-A1 · Jul 30, 2020 · US
US10877873B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10877873-B2 |
| Application number | US-201916270034-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 7, 2019 |
| Priority date | Feb 7, 2019 |
| Publication date | Dec 29, 2020 |
| Grant date | Dec 29, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Techniques are provided to use historic execution state information to visualize tracepoint data. For example, historic execution state information corresponding to an application's previous execution is accessed. This historic execution state information was collected while the application was executing. After correlating the historic execution state information to the application's code, a tracepoint is associated with a portion of the code. Consequently, when the code is replayed based on the historic execution state information, the tracepoint causes a behavior of that code portion to be logged while the code is replayed uninterrupted. The code is then actually replayed based on the historic execution state information. During the replay, the tracepoint causes the behavior of the code portion to be logged. The logged behavior is visualized on a user interface.
Opening claim text (preview).
What is claimed is: 1. A computer system comprising: one or more processors; and one or more computer-readable hardware storage devices having stored thereon computer-executable instructions that are executable by the one or more processors to cause the computer system to: access historic execution state information corresponding to a previous execution of an application, wherein the historic execution state information was collected during the previous execution of the application; after correlating the historic execution state information to code associated with the application, cause a tracepoint to be associated with a value of a variable at a particular point of the code, wherein when the code of the application is replayed based on the historic execution state information, the tracepoint causes the value of the variable associated with the tracepoint to be logged without pausing or interrupting the replay of the code; replay the code based on the historic execution state information, wherein during the replay, the tracepoint causes the value of the variable at the particular point of code to be logged without pausing or interrupting the replay of the code; and on a user interface, visualize the logged value of the variable. 2. The computer system of claim 1 , wherein the historic execution state information includes information for only a portion of the application's execution as opposed to an entirety of the application's execution. 3. The computer system of claim 1 , wherein the tracepoint is associated with the point of code after the application's previous execution such that the value of the variable is logged and visualized only after the application's previous execution. 4. The computer system of claim 1 , wherein the tracepoint is configurable such that the logged value of the variable is organized by any one or more of hardware component, software component, machine, thread, or time. 5. The computer system of claim 1 , wherein replaying the code based on the historic execution state information is a read-only operation performed by reading the historic execution state information. 6. The computer system of claim 1 , wherein a tracepoint icon is displayed at a location proximate to the point of the code, and wherein the tracepoint icon has a format that is different from a breakpoint icon. 7. The computer system of claim 1 , wherein the point of the code corresponds to a string value, and wherein visualizing the logged value of the variable of the code is performed by visualizing the string value as an object or, alternatively, as a string literal. 8. The computer system of claim 1 , wherein execution of the computer-executable instructions further causes the computer system to: apply a filter to the historic execution state information to filter out at least some of the historic execution state information. 9. The computer system of claim 1 , wherein the historic execution state information comprises at least one of time travel diagnostic data or data acquired from a memory dump. 10. The computer system of claim 1 , wherein the historic execution state information was collected while the application was in at least one of a deployed state or a development state. 11. A method for using historic execution state information to visualize tracepoint data, the method being implemented by a computer system and comprising: accessing historic execution state information corresponding to a previous execution of an application, wherein the historic execution state information was collected during the previous execution of the application; after correlating the application's historic execution state information to code associated with the application, causing a tracepoint to be associated with a value of a variable at a particular point of the code, wherein when the code of the application is replayed based on the historic execution state information, the tracepoint causes the value of the variable associated with the tracepoint to be logged without pausing or interrupting the replay of the code; replaying the code based on the historic execution state information, wherein during the replay, the tracepoint causes the value of the variable at the particular point of the code to be logged without pausing or interrupting the replay of the code; and on a user interface, visualizing the logged value of the variable. 12. The method of claim 11 , wherein visualizing the logged value of the variable includes graphing the logged value of the variable over a determined period of time. 13. The method of claim 11 , wherein the logged value of the variable is visualized while the code is being replayed based on the historic execution state information such that one or more behavioral changes included within the logged value of the variable are rendered during said replaying. 14. The method of claim 11 , wherein multiple different tracepoints are associated with multiple different corresponding portions of the code, and wherein a corresponding behavior visualization for each tracepoint in the multiple different tracepoints is visualized on the user interface. 15. The method of claim 11 , wherein the user interface includes one or more playback controls, and wherein the one or more playback controls, when implemented, control how the logged value of the variable is visualized. 16. One or more hardware storage devices having stored thereon computer-executable instructions that are executable by one or more processors of a computer system to cause the computer system to: access historic execution state information corresponding to a previous execution of an application, wherein the historic execution state information was collected during the previous execution of the application; after correlating the application's historic execution state information to code associated with the application, cause a tracepoint to be associated with a value of a variable at a particular point of the code, wherein when the code of the application is replayed based on the historic execution state information, the tracepoint causes the value of the variable associated with the tracepoint to be logged without pausing or interrupting the replay of the code; replay the code based on the historic execution state information, wherein, during the replay, the tracepoint causes the value of the variable at the particular point of the code to be logged without pausing or interrupting the replay of the code; and on a user interface, visualize the logged value of the variable. 17. The one or more hardware storage devices of claim 16 , wherein the historic execution state information is included in multiple different sets of historic execution state information, and wherein execution of the computer-executable instructions further causes the computer system to: access the multiple different sets of historic execution state information, wherein the multiple different sets of historic execution state information are all associated with the point of the code and with one or more other points of the code; and on the user interface, visualize an aggregation of the multiple different sets of historic execution state information. 18. The one or more hardware storage devices of claim 17 , wherein the aggregation includes a code coverage indication of the multiple different sets of historic execution state information relative to the point of code and relative to the one or more other points of the code. 19. The one or more hardware storage devices of claim 17 , wherein exec
Environments for analysis, debugging or testing of software · CPC title
for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range · CPC title
for test execution, e.g. scheduling of test suites · CPC title
by tracing the execution of the program · CPC title
Visualisation of programs or trace data · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.