×

Snapshotting executing code with a modifiable snapshot definition

  • US 9,465,721 B2
  • Filed: 08/19/2013
  • Issued: 10/11/2016
  • Est. Priority Date: 08/19/2013
  • Status: Active Grant
First Claim
Patent Images

1. A method, implemented at a computer system that includes one or more processors, for collecting performance data and snapshot data of an application executing on the one or more processors, the method comprising:

  • during execution of an application;

    collecting performance data comprising one or more of counters, processing times, and data throughput;

    identifying a snapshot definition, comprising (i) an event definition defining a condition under which execution of the application is to be paused and a snapshot of the paused application is to be taken, and (ii) a dataset definition defining a plurality of snapshot data items, different from the performance data, that are to be collected as part of the snapshot and that define an execution state of the application when satisfaction of the condition occurred, the plurality of snapshot data items including one or more of a call stack and one or more variable values; and

    identifying satisfaction of the condition;

    based at least on identifying satisfaction of the condition, pausing both execution of the application and collection of performance data;

    while execution of the application is paused, collecting the plurality of snapshot data items according to the dataset definition;

    subsequent to collecting the plurality of snapshot data items, resuming both execution of the application and collection of the performance data;

    assigning a first security policy to the collected performance data and a second security policy to the collected plurality of snapshot data items, the first security policy including a first indication that the collected performance data should be unencrypted and the second security policy including a second indication that the collected plurality of snapshot items should be encrypted;

    storing the collected performance data within a performance database in an unencrypted format based on the first indication of the first security policy; and

    storing the collected plurality of snapshot data items within a snapshot database in an encrypted format based on an the second indication of the second security policy.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×