Progress Developer Studio for OpenEdge provides debugging support for remote and local AppServer and WebSpeed instances. You can use the Debugger to debug multiple AppServer or WebSpeed agents in a single Progress Developer Studio for OpenEdge session.
You can attach the Debugger to an AppServer or WebSpeed broker by specifying the debug port (See Attaching the Debugger to an external AVM). Thus, you can debug the code running on the AppServer or WebSpeed broker. The broker provides a password as an optional parameter to ensure that it accepts debug connections only from authenticated clients.
Progress Developer Studio for OpenEdge debug launch configuration type allows you to specify how to connect to the AppServer or WebSpeed server running in the debug mode (See Progress OpenEdge AppServer and WebSpeed settings). Upon a successful connection with the broker, you can view the broker and the agents running on it in the Debug view.
The Progress Developer Studio for OpenEdge Debugger also allows you to set breakpoints in an AppServer or WebSpeed debug session (See Setting breakpoints). When you set a breakpoint on a line of ABL code, the Debugger adds the breakpoint to all the AppServer or WebSpeed agents. When an agent reaches the breakpoint, it notifies the Debugger of its state through the broker. Once it receives the notification, Progress Developer Studio for OpenEdge verifies if the source file and the code being executed are the same. If the file in the Progress Developer Studio for OpenEdge environment is same as that in the AppServer or WebSpeed debug session, it opens in the ABL Editor and highlights the line on which the breakpoint was hit. The Debug view updates itself to display the agent on which the file is being executed.
The AppServer or WebSpeed debug session represents multiple AVMs, one for each AppServer or WebSpeed agent. You can view the variable information in the Variables view by selecting an individual agent node or one of the stack frames under it in the Debug view.
The Debugger also provides options to suspend and resume individual agents within an AppServer or WebSpeed debug session. For more information, see Suspending and resuming AppServer or WebSpeed agents.