Techniques for debugging a computer program that includes multiple modules
executing on multiple machines include receiving, at a unifying
component, first data from a first machine. The first data indicates
debugging information generated by the first machine. Second data is also
received at the unifying component from a second machine. The second data
indicates debugging information generated by the second machine. Based on
the first data and the second data, third data is formed indicating a
single integrated representation of debugging information for the
computer program. The unifying component allows debugging information
from several machines to be integrated and then presented to a user
through a single debugger client.