Patent ID: 7669186

Claim:
A system, comprising: a target computer device configured to host a lightweight debug agent configured to facilitate debugging of one or more threads of execution at a virtual machine executing at the target device, wherein the lightweight debug agent is capable of pausing execution of the thread at a given point during debugging; and a debug controller configured to: receive a request to initiate a debug session to debug a targeted thread of the one or more threads, wherein the request identifies the target device and the targeted thread; in response to receiving the request, determine that an independently deployable module for the lightweight debug agent usable in performing the debug session is not deployed at the virtual machine; in response to said determining that the module is not deployed, deploy the module of the lightweight debug agent at the virtual machine for the debug session; initiate the debug session of the targeted thread, wherein the debugging session comprises pausing execution of the targeted thread at a given point; and receive, from the lightweight debug agent, debug information obtained from the targeted thread of execution during at least a portion of the debug session; provide the debug information to a debugger.