Computer software and hardware provide for remotely monitoring the
execution of computer programs. Monitoring instructions are added to the
computer program so that during execution of the program, data is
collected regarding the program execution. The collected data may be
automatically sent to a remote system or site for analysis. The
monitoring instructions create little or no performance impact on the
client yet provide valuable information to the developer of the program.
Additionally, the monitoring instructions may be changed during computer
program development.