Using historic execution data to visualize tracepoints

US10877873B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10877873-B2
Application numberUS-201916270034-A
CountryUS
Kind codeB2
Filing dateFeb 7, 2019
Priority dateFeb 7, 2019
Publication dateDec 29, 2020
Grant dateDec 29, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

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.

First claim

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

Assignees

Inventors

Classifications

  • Environments for analysis, debugging or testing of software · CPC title

  • G06F3/0484Primary

    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

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10877873B2 cover?
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 tr…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F11/3698. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 29 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).