Kbase P13578: What debugging code can be added to web-disp.p file to help troubleshoot WebSpeed agent hang issue
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  30/07/2008 |
|
Status: Verified
GOAL:
What debugging code can be added to web-disp.p file to help troubleshoot WebSpeed agent hang issue
GOAL:
How web-disp.p can be changed to write more information to log file?
FACT(s) (Environment):
All Supported Operating Systems
WebSpeed 3.1C
WebSpeed 3.1D
FIX:
This program is intended to show how to add debugging messages to the web dispatcher web-disp.p. The following code can help determine which WebSpeed program caused the agent to hang.
Please note that the web-disp.p changes from version to version. Thus the information within this Solution takes into consideration those changes from WebSpeed 3.1C to WebSpeed 3.1D.
Please follow the procedures to edit the web-disp.p file.
1. Open the %DLC%\src\web\objects\web-disp.p file using the progress procedure editor.
IN WEBSPEED 3.1C,
2. Find the section of the web-disp.p that looks like this:
IF NOT debugging-enabled AND AppProgram BEGINS "src/web/":U THEN
RUN HtmlError IN web-utilities-hdl
(SUBSTITUTE ("Unable to run Web object '&1'", AppProgram )).
ELSE
/* Try to run the Web object application program. */
RUN run-web-object IN web-utilities-hdl (AppProgram).
/* If any debugging options are set except "top" ... */
IF debugging-enabled AND debug-options <> "" AND
3. Copy the following code below and replace it with the highlighted portion of the code above.
ELSE DO:
MESSAGE "debug_log"
ENTRY(3, WEB-CONTEXT:EXCLUSIVE-ID,':')
AppProgram "started".
RUN run-web-object IN web-utilities-hdl (AppProgram).
MESSAGE "debug_log"
ENTRY(3, WEB-CONTEXT:EXCLUSIVE-ID,':')
AppProgram "completed".
END.
IN WEBSPEED 3.1D,
2. Find the section of the web-disp.p that looks like this:
AppProgram = (IF AppProgram = "debug":U THEN "webutil/debug.p":U ELSE
(IF AppProgram = "ping":U THEN "webutil/ping.p":U ELSE
(IF AppProgram = "reset":U THEN "webutil/reset.p":U ELSE
AppProgram))).
RUN run-web-object IN web-utilities-hdl (AppProgram) NO-ERROR.
3. Copy the following code below and replace it with the highlighted portion of the code above.
MESSAGE "debug_log"
ENTRY(3, WEB-CONTEXT:EXCLUSIVE-ID,':')
AppProgram "started".
RUN run-web-object IN web-utilities-hdl (AppProgram).
MESSAGE "debug_log"
ENTRY(3, WEB-CONTEXT:EXCLUSIVE-ID,':')
AppProgram "completed".
4. Save the file as debug-disp.p and compile it.
5. Move the debug-disp.r file into the \tty\web\objects folder.
6. Now go to the agent startup parameter in the broker properties and change the name web-disp.p to debug-disp.p.
7. Before you restart the broker, delete the server.log files so the only new information will be in the server log files.
8. Restart the broker and be sure that the logging level for broker and server were set to 3. The server log with logging level 3 should stamp the program and the agent with the pid number that ran the program.