odrDebug.py script
We can use the odrDebug.py script to diagnose errors that an on demand router (ODR) returns.
Purpose
We can use the odrDebug.py script to diagnose errors that an ODR returns, such as 404 errors and 503 errors.
Location
The odrDebug.py script is located in the app_server_root/bin directory.
Usage
The default script usage follows:
./wsadmin.sh -lang jython -f odrDebug.py
Operations
Specify the following parameters with the odrDebug.py script:
setHttpDebug:
- nodeName: Name of the node to debug.
- odrName: Name of the ODR to debug.
- errorCode: Specifies the HTTP error code. We can specify 404, 503, and so on.
- expression: Specifies if the error code is being debugged. Specify false to disable debugging when the error occurs. Specify true to enable debugging when the error occurs.
- debugLevel: How much information is provided for debugging. We can use one of the following debug levels:
- 0: prints a concise description on a single line
- 1: prints a subset of target.xml file information
- 2: prints the entire target.xml file
Example
./wsadmin.sh -lang jython -f odrDebug.py setHttpDebug my_node my_ODR 503 true 1
Result
If a 503 error occurs because the servers are not started, the SystemOut.log file contains the following message:
[11/3/07 19:20:00:427 EDT] 00000034 HttpDebugResp I URL: http://draco02.rtp.raleigh.ibm.com:80/A/CpuAndSleepBound, statusCode: 503, reason: no servers in cluster xd61/DC1 are running web module xd61/A/microwebapp.war webModule=xd61/A/microwebapp.war cluster=xd61/DC1 server=xd61/draco03/DC1_draco03 state=STOPPED weight=0 reachable=true server=xd61/draco04/DC1_draco04 state=STOPPED weight=0 reachable=true server=xd61/draco05/DC1_draco05 state=STOPPED weight=0 reachable=true server=xd61/draco06/DC1_draco06 state=STOPPED weight=0 reachable=true server=xd61/draco07/DC1_draco07 state=STOPPED weight=0 reachable=true
Related tasks
Create ODRs
Intelligent Management: administrative roles and privileges