1. One or more computer-readable memory, the one or more computer-readable memory comprising computer-executable instructions for debugging an application program by providing remote monitoring of a remotely executed portion of the application program, the computer-executable instructions directed to steps comprising: intercepting, from a server associated with a network hosted portion of the application program, the remotely executed portion of the application program that was directed to a client that will execute the remotely executed portion of the application program, wherein each combination of the network hosted portion of the application program and the remotely executed portion of the application program comprise a distributed replicated copy of the application program, and wherein further the network hosted portion of the application program can interact with multiple remotely executed portions of the application program to form multiple distributed replicated copies of the application program; parsing the intercepted remotely executed portion of the application program to identify instrumentation points therein; selecting only a subset of the identified instrumentation points, the selected subset of the identified instrumentation points differing from a previously selected subset of identified instrumentation points in a previously intercepted remotely executed portion of the application program, the previously intercepted remotely executed portion of the application program being another copy of the intercepted remotely executed portion of the application program; and modifying the remotely executed portion of the application program to insert, at the selected subset of the identified instrumentation points, debugging computer-executable instructions.