The dispatch progress monitor (DPM) enables you to gather, at specified time intervals, data about a dispatched request if that dispatched request is still being processed after this time interval elapses. After the data is gathered, a new time interval starts. As with the first time interval, when this time interval elapses, the data is gathered again. As long as the DPM is active, and the request is still running in the servant, the data continues to be gathered at the end of each time interval.
If DPM is not active for the protocol that a request is using, such as HTTP or IIOP, when the request is dispatched into the servant, DPM does not monitor that request, even if you issue the modify command to dynamically enable DPM for that protocol after that request is dispatched. After DPM is enabled for a protocol, DPM only monitors new requests that use that protocol.
If DPM is active for the protocol that is being used for a request, before that request is dispatched in the servant, you can make dynamic changes to the specified time interval, and the dump action that you want performed. Any dynamic changes that you make take effect at the end of the current interval for a dispatched request, and starting with first interval for new requests.
f server,dpm,[IIOP=nnn|HTTP=nnn|HTTPS=nnn |MDB=nnn|SIP=nnn|SIPS=nnn|,clear_all] | dump_action=[xxx]
When you specify a non-zero value for one or more of the DPM-related protocols, you automatically enable this functionality for those protocols. To disable DPM for specific protocols, set the parameter for that protocol to 0. To disable DPM for all of the DPM-related protocols, set the dump_action parameter to NONE. This setting overrides any value specified for the parameter for a specific protocol.
When DPM is active for a protocol, and traceback data is collected when the time interval elapses, information, similar to the following information is written to your server log file:
BossLog: { 0175} 2008/05/05 12:16:01.418 01 SYSTEM=SY1 SERVER=BBOS001 PID=0X00010144 TID=0X00000034 0XF6FAF20 c=./bbgrjtr.cpp at line:+885 ... BBOJ0118I: ThreadDetails: ASID = 005B, TCB = 0X008CBE88, Request = fffff503, Is JVM Blocked = false, Tried to interrupt = false, Given up = false, Internal Work Thread = false, Hung Reason = Not Hung, SR Dispatch Time = 2008/05/05 12:15:31.371625, CTL Receive Time = 2008/05/05 12:15:31.366693, CTL Queued to WLM Time = 2008/05/05 12:15:31.371328, Details = , ODI Details = .JVM INTERRUPTIBLE THREAD, Monitor ACTIVE. BossLog: { 0176} 2008/05/05 12:16:01.423 01 SYSTEM=SY1 SERVER=BBOS001 PID=0X00010144 TID=0X00000034 0XF6F9DE0 c=./bbgrjtr.cpp at line:+885 ... BBOJ0117I: JAVA THREAD STACK TRACEBACK FOR THREAD WebSphere:ORB.thread.pool t=008cbe88: Dispatch Progress Monitor Traceback for thread WebSphere:ORB.thread.pool t=008cbe88: com.ibm.ws390.orb.ClientDelegate.invokeRequestCFW(Native Method) com.ibm.ws390.orb.ClientDelegate.commonInvoke(ClientDelegate.java:998) com.ibm.ws390.orb.ClientDelegate.invoke(ClientDelegate.java:845) org.omg.CORBA.portable.ObjectImpl._invoke(ObjectImpl.java:484) com.ejb.test.hello.second._SayHelloSecondHome_Stub.create(_SayHelloSecondHome_Stub.java:207) com.ejb.test.hello.first.SayHelloFirstBean.sayHelloOne(SayHelloFirstBean.java:76) com.ejb.test.hello.first.EJSRemoteStatelessSayHelloFirst_67c1d243. sayHelloOne(EJSRemoteStatelessSayHelloFirst_67c1d243.java:41)
f <varname>server</varname>,display,dpm
The following message displays in response to this command:
BBOO0361I DISPATCH PROGRESS MONITOR (DPM) SETTINGS: IIOP(000):HTTP(010):HTTPS(015) :MDB(000):SIP(020):SIPS(000),DUMP_ACTION (JAVATDUMP)
f server,dpm,dumpaction=[SVCDUMP | JAVACORE | HEAPDUMP | TRACEBACK | JAVATDUMP | NONE ]
In this information ...Related tasks
| IBM Redbooks, demos, education, and more(Index) |