Patent ID: 8108839
Filing Date: 2012-01-31
Classification: G06F

Abstract:
1. A method for tracing execution of a computer program, comprising the steps of: associating a trigger with a triggering event occurring during execution of said computer program; responsive to occurrence of said triggering event during execution of an instance of a procedure of said computer program, enabling a trigger-based tracing for a subset of procedure instances upon subsequent occurrence of a traceable event during execution of said computer program, making a determination whether to collect trace data, said determination being based at least in part on whether said trigger based tracing is enabled for a currently executing procedure instance; and collecting trace data responsive to said determination made by said step of making a determination whether to collect trace data; wherein said subset of procedure instances consists of all procedure instances on a call stack of said computer program when said triggering event occurred, including said triggering instance; wherein said step of enabling a trigger-based tracing for a subset of procedure instances comprises the step of marking each stack frame on a current call stack with an indication that the procedure instance corresponding to the stack frame is enabled for trigger-based tracing; wherein said step of enabling a trigger-based tracing for a subset of procedure instances comprises enabling trigger-based stack scoped tracing for a first instance of a calling procedure, and not enabling trigger-based tracing for a called procedure which is a second instance of the same procedure as the calling procedure, at least a respective portion of said first and second instances of said first procedure being executed after occurrence of said triggering event.