Understanding Debug Manager
Debug Manager provides communication-related services to z/OS® Debugger and the remote Eclipse client. It circumvents the need to open outbound ports from z/OS and for users to track their IP address. For differences between usages with and without Debug Manager, see the figures in TCP/IP ports.
Figure 1 shows a schematic overview of how an Eclipse client uses Debug Manager when you debug an application. In a Sysplex environment, Debug Manager instances on different LPARs also maintain a communication with each other to establish connection even in the case when the LPAR that a user is logged on and the LPAR where a debug session has started are different. For more information, see Enabling sysplex support.
- The client connects to the host by using a z/OS connection in the Remote Systems view.
- As part of the logon, Debug Miner registers the user with Debug Manager, which is active within the DBGMGR started task.
- When the program to be debugged starts, z/OS Debugger sends the debug request to Debug Manager.
- Debug Manager checks whether the debug session user is registered. If the user is not registered at this moment, the debug session goes dormant. z/OS Debugger will wait up to two times of $VALUE. If the user still has not signed on to the z/OS connection in the Remote Systems view and is not registered with Debug Manager, the debug session will time out.
- If the user is registered, Debug Manager notifies the Eclipse client that a new debug session is available.
- The Eclipse client makes a TCPIP connection to the external Debug Manager port.
- Debug Manager passes the TCPIP connection to z/OS Debugger, which allows the user to control the debug session.