This appendix describes how to identify Service Bus problems and take the proper corrective actions with the assistance of the WebLogic Diagnostic Framework (WLDF) and the Oracle Fusion Middleware Diagnostic Framework (DFW).
This appendix includes the following sections:
Service Bus leverages Oracle's Diagnostic Framework (DFW) and WebLogic Diagnostic Framework (WLDF) to help you diagnose problems in Oracle Service Bus. WLDF lets you to monitor diagnostic scenarios using watches and notifications. DFW lets you gather diagnostic scenarios specific to Service Bus into data dumps that are formatted for viewing and analyzing.
WebLogic and SOA Suite both provide several predefined diagnostic dumps to help you with diagnostics. In addition, Service Bus supports the following diagnostic dumps:
Derived Resource Caches
JMS Request/Response Correlation Table
MQ Request/Response Correlation Table
For information about the diagnostic frameworks, watches, and notifications, see "Diagnosing Problems" in the Oracle Fusion Middleware Administrator's Guide. For information about using the diagnostic frameworks with SOA Suite (including generated dumps, setting up watches and notifications, and predefined diagnostic dumps), see "Diagnosing Problems with SOA Composite Applications" in Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite.
WLDF is a monitoring and diagnostics framework included with Oracle WebLogic Server that defines and implements a set of services that run within server processes and participate in the standard server life cycle. With WLDF, you can capture diagnostic data and set watches and notifications when certain conditions occur. Use watches and notifications to collect diagnostic data to identify problems. This data enables you to isolate and diagnose faults when they occur.
For more information about WLDF, see Oracle Fusion Middleware Configuring and Using the Diagnostics Framework for Oracle WebLogic Server.
The Automatic Diagnostic Repository (ADR) is a file-based hierarchical repository for diagnostic data, such as traces and dumps. The Oracle Fusion Middleware components store all incident data in the ADR, and each Oracle WebLogic Server stores diagnostic data in subdirectories of its own home directory within the ADR. For more information about the ADR, see "Diagnosing Problems with SOA Composite Applications" in Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite.
In addition to the diagnostic dumps available with Oracle WebLogic Server and Oracle SOA Suite, Service Bus supports the creation of the diagnostic dumps in Table J-1.
Table J-1 Supported Oracle Service Bus Diagnostic Dumps
Dump | Description |
---|---|
|
A collection of statistics about all Service Bus derived resource caches on the server |
|
Service Bus JMS request/response correlation table |
|
Service Bus MQ request/response correlation table |
The Diagnostic Framework outputs and records the diagnostic dumps. You can list details about all the supported diagnostic dumps with the WLST listDumps
and describeDump
commands.
Note:
You must start WLST
from MW_HOME
/oracle_common/common/bin
. Otherwise, the ODF functions are missing.
Connect to the server on which the SOA Infrastructure is installed.
wls:/offline> connect('user_name', 'password', 't3://myhost:7001') Connecting to t3://myhost:8001 with userid user_name ... Successfully connected to managed Server 'soa_server1' that belongs to domain 'soainfra'.
List the supported Diagnostic Framework dumps.
wls:/soainfra/serverConfig> listDumps() odl.activeLogConfig jvm.classhistogram dms.ecidctx wls.image odl.logs dms.metrics odl.quicktrace http.requests jvm.threads Use the command describeDump(name=<dumpName>) for help on a specific dump.
List the supported Oracle Service Bus dumps.
wls:/soainfra/serverConfig> listDumps(appName='OSB') OSB.derived-caches OSB.jms-async-table OSB.mq-async-table Use the command describeDump(name='<dumpName>') for help on a specific dump.
For more information about listDumps
and describeDump
, see "Diagnostic Framework Custom WLST Commands" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.
For more information about Diagnostic Framework dumps, see "Diagnosing Problems" in Oracle Fusion Middleware Administrator's Guide.
Table J-2 provides details about Service Bus derived resource caches diagnostic dumps. The information captured includes the name of each cache type, statistical information for each cache, and information about each cached entry.
Table J-2 JMS Correction Table Diagnostic Dumps
Dump Name | Dump Parameters/Dump Mode | Information Captured |
---|---|---|
|
None |
For each derived resource cache managed in the OSB runtime, the following information is provided:
For each cache entry, the following information is provided:
|
Table J-3 lists each Service Bus cache included in the diagnostic information.
Table J-3 Oracle Service Bus Derived Resource Caches
Cache | Description |
---|---|
Archive ClassLoader |
Dependency-aware archive class loaders. |
Archive Summary |
Archive summaries. |
CodecFactory |
Codec factories. |
EffectiveWSDL |
EffectiveWSDL objects that are derived from the service or WSDL resources of business or proxy services. |
Flow_Info |
Split-join objects. |
LightweightEffectiveWSDL |
EffectiveWSDL objects that are derived from the service or WSDL resources of business or proxy services. |
MflExecutor |
MFL executors. |
RouterRuntime |
Compiled router runtimes for proxy services. |
RuntimeEffectiveWSDL |
Session valid effectiveWSDL objects derived from the service or WSDL resources of business or proxy services. |
RuntimeEffectiveWSPolicy |
WS policies for business or proxy services. |
SchemaTypeSystem |
Type system information for MFL, XS, and WSDL documents. |
ServiceAlertsStatisticInfo |
Service alert statistics for business or proxy services. |
ServiceInfo |
Compiled service information for business or proxy services and for WSDL documents. |
Wsdl_Info |
WSDL information objects. |
WsPolicyMetadata |
Complied WS-Policy metadata. |
XMLSchema_Info |
XML schema information for XML schema objects. |
XqueryExecutors |
XQuery executors. |
XsltExecutor |
XSLT executors. |
alsb.transports.ejb. |
EJB binding information for EJB business services. |
alsb.transports.jejb.business. |
JEJB binding information for JEJB business services. |
alsb.transports.jejb.proxy. |
JEJB binding information for JEJB proxy services. |
Enter the following WLST command line syntax to display a dump description of OSB.derived-caches
:
wls:/soainfra/serverConfig> describeDump(name='OSB.derived-caches',appName='OSB')
The following information appears:
Name: OSB.derived-caches Description: Dump of the caches used for OSB derived resources. Mandatory Arguments: Optional Arguments:
Enter the following WLST command line syntax to execute a dump of OSB.derived-caches
:
wls:/soainfra/serverConfig> executeDump(name='OSB.derived-caches', appName='OSB')
Information similar to the following appears (parts of this dump have been truncated for readability).
<derivedCaches xmlns="http://www.bea.com/wli/config/xmltypes"> <version>11.1.1.7</version> <derivedCache cacheType="RuntimeEffectiveWSDL"> <configuredEntries>2147483647</configuredEntries> <cacheEntriesInUse>0</cacheEntriesInUse> <totalHits>0</totalHits> <totalMisses>0</totalMisses> <hitRatio>0.0</hitRatio> <cacheEntries/> </derivedCache> ... <derivedCache cacheType="ServiceAlertsStatisticInfo"> <configuredEntries>2147483647</configuredEntries> <cacheEntriesInUse>9</cacheEntriesInUse> <totalHits>0</totalHits> <totalMisses>51</totalMisses> <hitRatio>0.0</hitRatio> <cacheEntries> <cacheEntry> <ref>services/bs_dq_uri4.BusinessService</ref> <creationTime>2012-03-22T23:44:53.737-07:00</creationTime> <computeTimeMSecs>0</computeTimeMSecs> </cacheEntry> <cacheEntry> <ref>services/bs_dq_nopooling.BusinessService</ref> <creationTime>2012-03-22T23:44:53.736-07:00</creationTime> <computeTimeMSecs>0</computeTimeMSecs> </cacheEntry> <cacheEntry> <ref>services/bs_dq_uri1.BusinessService</ref> <creationTime>2012-03-22T23:44:53.738-07:00</creationTime> <computeTimeMSecs>0</computeTimeMSecs> </cacheEntry> <cacheEntry> <ref>services/proxy_dq_uri.ProxyService</ref> <creationTime>2012-03-22T23:44:53.736-07:00</creationTime> <computeTimeMSecs>0</computeTimeMSecs> </cacheEntry> <cacheEntry> <ref>services/bs_dq_conn_pooling.BusinessService</ref> <creationTime>2012-03-22T23:44:53.736-07:00</creationTime> <computeTimeMSecs>0</computeTimeMSecs> </cacheEntry> <cacheEntry> <ref>services/bs_dq_conn_nopooling.BusinessService</ref> <creationTime>2012-03-22T23:44:53.737-07:00</creationTime> <computeTimeMSecs>0</computeTimeMSecs> </cacheEntry> <cacheEntry> <ref>services/bs_dq_uri2.BusinessService</ref> <creationTime>2012-03-22T23:44:53.737-07:00</creationTime> <computeTimeMSecs>0</computeTimeMSecs> </cacheEntry> <cacheEntry> <ref>services/bs_dq_pooling.BusinessService</ref> <creationTime>2012-03-22T23:44:53.736-07:00</creationTime> <computeTimeMSecs>0</computeTimeMSecs> </cacheEntry> <cacheEntry> <ref>services/bs_dq_uri3.BusinessService</ref> <creationTime>2012-03-22T23:44:53.737-07:00</creationTime> <computeTimeMSecs>0</computeTimeMSecs> </cacheEntry> </cacheEntries> </derivedCache> ... </derivedCaches>
Table J-4 provides details about Service Bus JMS request/response correlation table diagnostic dumps. The information captured includes the correlation ID, expiration, and destination for each message.
Table J-4 JMS Correlation Table Diagnostic Dumps
Dump Name | Dump Parameters/Dump Mode | Information Captured |
---|---|---|
|
None |
In addition to the Service Bus version, the following information is provided for each pending message in each service reference:
|
Enter the following WLST command line syntax to display a dump description of OSB.jms-async-table
:
wls:/soainfra/serverConfig> describeDump(name='OSB.jms-async-table',appName='OSB')
The following information appears:
Name: OSB.jms-async-table Description: Dump of the OSB JMS Async Table of pending messages Mandatory Arguments: Optional Arguments:
Enter the following WLST command line syntax to execute a dump of OSB.jms-async-table
:
wls:/soainfra/serverConfig> executeDump(name='OSB.jms-async-table', appName='OSB')
Information similar to the following appears:
<transportDiagnosticsContents xmlns="http://www.bea.com/wli/sb/transportdiags"> <version>11.1.1.7</version> <transportDiagnostics transportType="jms"> <correlationTable> <services> <service> <ref>default/testJmsResponseRollback_out</ref> <message> <correlationMsgId responsePattern="JMSCorrelationID"> ID:42454153155cc06b7f5ab312000001363d5bd59effff8d4 </correlationMsgId> <expirationTime>2012-03-22T19:53:43.621-07:00</expirationTime> <msgDestination>testJmsResponseRollback_outRequest</msgDestination> </message> </service> </services> </correlationTable> </transportDiagnostics> </transportDiagnosticsContents>
Table J-5 provides details about Service Bus MQ request/response correlation table diagnostic dumps. The information captured includes the correlation ID, expiration, and destination for each message.
Table J-5 MQ Correlation Table Diagnostic Dumps
Dump Name | Dump Parameters/Dump Mode | Information Captured |
---|---|---|
|
None |
In addition to the Service Bus version, the following information is provided for each pending message in each service reference:
|
Enter the following WLST command line syntax to display a dump description of OSB.mq-async-table
:
wls:/soainfra/serverConfig> describeDump(name='OSB.mq-async-table',appName='OSB')
The following information appears:
Name: OSB.mq-async-table Description: Dump of the OSB MQ Async Table of pending messages Mandatory Arguments: Optional Arguments:
Enter the following WLST command line syntax to execute a dump of OSB.mq-async-table
:
wls:/soainfra/serverConfig> executeDump(name='OSB.mq-async-table', appName='OSB')
Information similar to the following appears:
<transportDiagnosticsContents xmlns="http://www.bea.com/wli/sb/transportdiags"> <version>11.1.1.7</version> <transportDiagnostics transportType="mq"> <correlationTable> <services> <service> <ref>services/mq_Biz_cached</ref> <message> <correlationMsgId responsePattern="MQCorrelationID"> 000000000000000000000000000000000000000000000000 </correlationMsgId> <expirationTime>2012-03-22T23:48:09.085-07:00</expirationTime> <msgDestination>rc_req</msgDestination> </message> </service> </services> </correlationTable> </transportDiagnostics> </transportDiagnosticsContents>
In addition to generating Service Bus diagnostic dumps using WSLT, you can also use Oracle Remote Diagnostic Agent (RDA). Before performing the following steps, make sure RDA is installed on your system.
Tip:
For more information about using RDA for Service Bus, refer to the knowledge base article, "How to Collect Analysis Information using RDA for Oracle Service Bus (OSB)," on Oracle support. The ID for this document is 1352549.1.
To generate a diagnostic dump using RDA
From a command line, run the following command:
For Windows:
rda.cmd -vSCRP OSB
For UNIX or LINUX:
rda.sh -vSCRP OSB
Enter information as prompted on the command line. When asked whether you want RDA to collect Oracle Service Bus information, accept the default (Y).
Note:
For more information about running the RDA tool and the options, see the readme file in the RDA directory in your Fusion Middleware home directory.
You can display the results in your web browser. Access the file from the output directory you specified.
The name of the file is prefix
__start.htm
, where prefix is the prefix you specified.