IBM Support

MustGather: ODR HTTP Request Routing problems in WebSphere Intelligent Management

Troubleshooting


Problem

Collecting data for problems related to the On Demand Router (ODR) for IBM WebSphere Intelligent Management. Gathering this information before calling IBM support helps you understand the problem and save time analyzing the data.

Resolving The Problem

If you have already contacted support, continue on to the component-specific MustGather information. Otherwise, click: MustGather: Read first for all WebSphere Intelligent Management.


On Demand Router (ODR) HTTP request routing-specific MustGather information
If the problem is due to unexpected changes in response times please enable custom logging in addition to the steps below. Custom logging is lightweight and will display the break down of the entire request, including time spent in the On Demand Router and time spent in the Application Server. The information is important in determining the next troubleshooting steps. To enable Custom Logging execute the following command against the On Demand Router:

     wsadmin -f manageODR.py insertCustomLogRule ${ODRNODE}:%{ODRSERVER} 1 "service.time >= 0" "http.log %R %T %z %Z %U”

Where {ODRNODE} is the node name where the On Demand Router is running and {ODRSERVER} is the name of the On Demand Router. The information will be output to http.log

%R Response time in milliseconds. Time from when ODR receives the request to when it sends a response to client

%T The time taken to serve the request, in milliseconds. Combined time spent in ODR and application server.

%z Destination IP address.

%Z Destination server name (cell/node/server).

%U The URL path requested, not including any query string.

  1. The following outline lists the steps to enable tracing for a set of different components in WebSphere Intelligent Management. The tracing can be verbose,  therefore, the recommendation is that the size of trace files be increased to 100 MB and the number of history log files to be retained be changed to 10. Setting the appropriate trace size allows the various servers to collect a good sized trace without losing any critical diagnostic information due to log-wrapping.

    For example, to change this setting for the On Demand Router, navigate the following path on the administrative console. Servers -> On Demand Routers -> <odr name> -> Diagnostic Trace service. On this panel, you can change the trace file size and the number of history files.
     
  2. Enable Tracing for the Deployment Manager process with the following trace string:
    com.ibm.ws.odc.*=all:com.ibm.ws.wsgroup.*=all.
  3. Enable Tracing for the On Demand Router processes with the following trace strings:
    com.ibm.ws.odc.*=all:com.ibm.ws.wsgroup.*=all
    :com.ibm.ws.classify.*=all:com.ibm.ws.xd.dwlm.client.*=all
    :com.ibm.ws.dwlm.client.*=all:com.ibm.ws.proxy.*=all
    :com.ibm.ws.xd.workprofiler.*=all:com.ibm.ws.odr.*=all
    :com.ibm.ws.dwlm.client.TargetDescriptorImpl=off.

    For 504 responses, also enable the following additional tracing:
    WebSphereProxy=all:GenericBNF=all:HTTPChannel=all
  4. Stop the Deployment Manager and On Demand Router Processes
     
  5. Clear out the <profile_name>\logs directories for the Deployment Manager and On Demand Router profiles.
     
  6. Restart the Deployment Manager and On Demand Router processes.
     
  7. Optionally, you may need to enable odrDebug.py script when tracking down an incorrect Http response.
      
    The odrDebug.py script is added to help diagnose errors returned by the ODR, particularly response codes of 404 and 503. 

    Usage: From the WebSphere_Install_Root\bin directory, execute  

     wsadmin.sh -lang jython -f odrDebug.py setHttpDebug
     my_Node my_ODR Http_error true 2
    Where:
    my_node The node name that needs to be debugged
    my_odr The name of the ODR that needs to be debugged
    Http_error The Http response that needs to be debugged (for example, 503)
  8. Re-create the error.
     
  9. Zip up (create a JAR file) the following directories and send the compressed (JAR) file.
    1. ../profiles/<profile_where_ODR_runs>/logs/*
    2. ../profiles/<profile_where_ODR_runs>/installedFilters/
      wlm/
      <odr_server_name>/target.xml
    3. ../profiles/<profile_where_DMGR_runs>/logs/*
    4. ../profiles/<profile_where_DMGR_runs>/installedFilters/
      wlm/
      <dmgr_server_name>/target.xml
    Where,
    <profile_where_ODR_runs> Represents the name of the WebSphere Application Server profile where the On Demand Router runs.
    <odr_server_name> Represents the name of the On Demand Router server.
     
    <profile_where_DMGR_runs> Represents the name of the WebSphere Application Server profile where the Deployment Manager runs.
    <odr_server_name> Represents the name of the Deployment Manager server.
What to do next
Once you have collected the MustGather information  submit the diagnostic information to IBM support.

[{"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"Intelligent Management Pack","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"},{"code":"PF035","label":"z\/OS"}],"Version":"8.5.5;8.0;7.0","Edition":"All Editions","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
04 August 2021

UID

swg21259229