Try OpenEdge Now
skip to main content
Debugging and Troubleshooting
OpenEdge Debugger : Starting and Stopping the Debugger : Debugging modes : Making the process ready for debugging : Using the proDebugConfig command
 
Using the proDebugConfig command
The proDebugConfig command gives you a way to instruct a running ABL client, WebSpeed agent or single AppServer process to make itself ready for debugging. You must execute the command on the same machine as the process you are enabling. You can run the command from either a UNIX shell or a Windows Proenv shell (Programs > Proenv from the Start menu). The command has the following syntax:

Syntax

proDebugConfig [process Id][-ready {yes | no}][-port port-number]
process Id
The ID of the process you want to enable for debugging. If you don’t specify an ID, the command searches the local machine and displays a list of running OpenEdge processes and prompts you to enter an ID shown in the list.
On UNIX, the list might resemble the following:
mscat 16273 1 0 Jul 08 pts/37 0:03 /pro/dlc/bin/_progres
-p /usr1/InvApp/main.p -T /tmp -h 10
mrdog 9295 26391 0 10:57:38 pts/40 0:01 /pro/dlc/bin/prowin32
-pf startup.pf
In Windows, the list might resemble:

C:\pro\dlc\bin\_progres.exe 16273
C:\pro\dlc\bin\prowin32.exe 9295
Enter the process ID, for example, 9295, and press ENTER. Press CTRL+C to cancel the command.
-ready {yes | no}
Turns the debug-ready state on or off. If you specify yes, and the process is currently ready for debugging (either from a previous command execution or the -debugReady startup parameter), the command displays a message to that effect that includes the port number used for the connection. If you specify no, and the ready state was already turned off by a previous command execution, or was never ready to begin with, the command displays a message to that effect. The default is yes.
-ready {yes | no}
Turns the debug-ready state on or off. If you specify yes, and the process is currently ready for debugging (either from a previous command execution or the -debugReady startup parameter), the command displays a message to that effect that includes the port number used for the connection. If you specify no, and the ready state was already turned off by a previous command execution, or was never ready to begin with, the command displays a message to that effect. The default is yes.
port-number
A port number or zero (0). If you specify a known port number, the AVM attempts to use that port to create a socket to await a connection from the Debugger. If the port is in use, proDebugConfig reports the error and the AVM instance continues to run, without making the process ready for debugging. If you do not specify the parameter or you specify 0, the AVM determines a usable port number, which the command displays to you in the shell.
If the command succeeds in making the process debug-ready, it displays a message to that effect and terminates. If the command execution is unsuccessful, the command outputs a message to the shell, the contents of which might indicate one of the following:
*You entered an incorrect process ID.
*The process you are trying to ready for debugging might be from an earlier release or a non-OpenEdge process.
*The AVM instance is busy, perhaps performing an extremely slow query, waiting on a database lock or a response from an AppServer, and is thus unable to respond in a timely manner. The attempt, in this case, times out after 25 seconds.
*The AVM instance is unable to respond, pending completion of one of the following statements:
*MESSAGE VIEW-AS ALERT BOX (GUI Windows)
*READKEY (character mode Windows)
*PAUSE (character mode Windows)
The command displays a message, instructing you to satisfy the condition and retry the operation.
*You tried to change the debug-ready state of a process that is already in a debug session.
For a WebSpeed agent, when the command successfully alters the debug-ready state, it writes the status (on or off) to the WebSpeed log file.
For an AppServer process, when the command successfully alters the debug-ready state, it writes the status (on or off) to the server log file.
If the AppServer is currently waiting for a new request, the Debugger will get control on the next line of executable ABL code.
For more information on starting the debugger in attachable mode, see Detachingfrom the process .