Skip Headers
Oracle® Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite
11g Release 1 (11.1.1.6.1)

Part Number E10226-12
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

11 Diagnosing Problems with SOA Composite Applications

This chapter describes how to identify Oracle SOA Suite problems early and take the proper corrective actions with the assistance of the WebLogic Diagnostic Framework (WLDF) and the Oracle Fusion Middleware Diagnostic Framework.

This chapter includes the following topics:

For information about troubleshooting, see Appendix B, "Troubleshooting Oracle SOA Suite and Oracle BPM Suite."

11.1 Introduction to the Diagnostic Frameworks

When you monitor and diagnose problems in Oracle SOA Suite, you face the following challenges:

To address these challenges, Oracle SOA Suite is integrated with the following diagnostic frameworks that assist you in identifying problems early and taking the proper corrective actions:

11.1.1 Introduction to WLDF

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.

Using WLDF, you can capture diagnostic data from Oracle SOA Suite. You configure WLDF watches and notifications from Oracle WebLogic Server Administration Console 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.

11.1.1.1 Introduction to Watches and Notifications

Watches monitor server and application states and send notifications based on criteria that you set. Watches and notifications are configured as part of a diagnostic module targeted to one or more server instances in a domain. When you create a watch, you build rule expressions for monitoring using the attributes of Oracle SOA Suite and Oracle WebLogic Server MBeans in Oracle WebLogic Server Administration Console.

For example, assume you want to be notified when the percentage of free heap memory falls below 100%. You create a watch that uses the Oracle WebLogic Server MBean weblogic.management.runtime.JRockitRuntimeMBean and its attribute HeapFreePercent. You then define logic indicating that when HeapFreePercent is less than 100%, you want to receive a notification. You can also use the MBean JVMRuntimeMBean when running with a non-JRockit virtual machine (VM).

For information about creating watches and notifications in Oracle WebLogic Server Administration Console, see Section 11.2, "Creating Watches and Notifications" and Section "Configuring the Diagnostic Framework" of Oracle Fusion Middleware Administrator's Guide.

11.1.1.2 Introduction to Diagnostic Scenarios and MBeans

The watch rule expressions that you create use the attributes of Oracle SOA Suite and Oracle WebLogic Server MBeans to collect data and perform monitoring. You diagnose scenarios with available MBeans to provide statistics about that scenario or to log messages. Managed beans (MBeans) are Java objects that represent JMX manageable resources in a distributed environment. The attributes of the following MBeans are available for defining in watches to monitor scenarios:

  • Oracle WebLogic Server MBeans

  • Diagnostic Oracle SOA Suite MBeans

  • DMS metrics exposed as MBeans

Oracle SOA Suite provides several diagnostic scenarios that you can monitor with watches and notifications. Table 11-1 provides details about the supported diagnostic scenarios and the MBeans to use for monitoring.

Table 11-1 Supported Diagnostic Scenarios and MBeans

Scenario Description Diagnostic Data Source

Memory issues (startup, deployment, and runtime)

Monitor the free heap available. If the free heap percentage is below a threshold, a notification is triggered to generate a thread stack dump and heap dump.

Oracle WebLogic Server MBean

Deployment hanging

Monitor the elapsed time of a deployment. If it exceeds a threshold, a notification is triggered.

Oracle SOA Suite deployment MBean

Data source issues

Monitor the suspension and connection pool/transaction time outs

JDBC MBeans

Server overload

Monitor the server's self-health.

Oracle WebLogic Server MBean

Stuck threads

Monitor stuck threads. If any are found, a notification is triggered.

A stuck thread watch/Diagnostic Framework notification is automatically included. Diagnostic Framework incident packages can be created with a tool such as the ADR Command Interpreter (ADRCI). Incidents are created automatically.


Table 11-2 lists some of the available MBeans and DMS Metrics to select when creating watches for monitoring and collecting diagnostic data.

Table 11-2 MBeans and DMS Metrics

Diagnostic Data Source (MBean) and Usage Description Oracle WebLogic Server MBean SOA MBean or DMS Metric

weblogic.management.runtime.JVMRuntimeMBean/ weblogic.management.runtime.JRockitRuntimeMBean

For memory statistics

Yes

- -

oracle.fabric.management.wldf.mbean.DeploymentWatchMXBeanImpl

For deployment elapsed time

- -

SOA MBean

weblogic.management.runtime.ServerRuntimeMBean

For health state information

Yes

- -

weblogic.management.runtime.JDBCDataSourceRuntimeMBean

weblogic.management.runtime.JTARuntimeMBean

For JDBC data sources and for accessing transaction runtime characteristics

Yes

- -


For more information about Oracle WebLogic Server MBeans, see Oracle Fusion Middleware Oracle WebLogic Server MBean Reference.

11.1.2 Introduction to the Diagnostic Framework

The Diagnostic Framework is an Oracle Fusion Middleware feature that aids in detecting, diagnosing, and resolving problems. The problems that are targeted are critical errors such as those caused by code bugs, metadata corruption, customer data corruption, deadlocked threads, and inconsistent state. The Diagnostic Framework detects critical failures and captures dumps of relevant diagnostics information (logs, metrics, server images, and so on). WLDF watches and notifications trigger events for which the Diagnostic Framework listens and generates appropriate data dumps. The dumps are formatted into incident packages for viewing and analysis.

The problems captured as incidents include critical errors such as those described in Table 11-1. Each incident package is identified by a unique ID. When a critical error occurs, it is assigned this unique ID known as an incident number. Diagnostic data for the error (such as log files) is immediately captured and tagged with this number.

The data is then stored in the Automatic Diagnostic Repository (ADR). ADR is a file-system repository for cataloging occurrences of failures and storage of associated diagnostic data. The data is retrieved by incident package number, formatted, viewed with Oracle database tools such as ADRCI, and analyzed.

ADRCI enables you to view the names of the dump files and the alert log with XML tags stripped. This viewing enables you to investigate problems, and package and upload first-failure diagnostic data to Oracle Support Services.

You can also use the Diagnostic Framework WLST commands to perform the following tasks:

  • Query problems

  • View incident dump files

  • Create manual incidents

  • Manually execute dumps

The Diagnostic Framework is supported on all JRF-supported platforms.

The Diagnostic Framework automatically includes several dumps. For information about these dumps, see Section "Investigating, Reporting, and Solving a Problem" of Oracle Fusion Middleware Administrator's Guide.

In addition to these dumps, several Oracle SOA Suite dumps are also supported. For information about Oracle SOA Suite dumps, see Section 11.1.4, "Supported Oracle SOA Suite Diagnostic Dumps."

For more information about solving problems, incidents, and WLDF and Diagnostic Framework integration, see Chapter "Diagnosing Problems" of Oracle Fusion Middleware Administrator's Guide.

For more information about ADR, see Section 11.4, "Viewing Incident Packages with ADR Tools."

11.1.2.1 Controlling the Number of Incident Packages

If you have a recurring problem in Oracle SOA Suite, this can cause for the creation of multiple incident packages. To prevent the server from being overloaded when many failures are occurring, the Diagnostic Framework automatically flood controls some incidents. To avoid this problem, you can configure the Diagnostic Framework to control the number of incident packages. For more information, see Section "Configuring the Diagnostic Framework" of Oracle Fusion Middleware Administrator's Guide.

11.1.3 Predefined Incident Processing Rules

When you create a watch in the Oracle WebLogic Server Administrator's Console, you also define a notification. A notification named FMWDFW notification is automatically available for selection. While you can create your own notifications, Oracle recommends that you select FMWDFW notification because it creates the Oracle SOA Suite dumps described in Section 11.1.4, "Supported Oracle SOA Suite Diagnostic Dumps."

When an error is detected, the FMWDFW notification handler creates an incident and the Diagnostic Framework takes over incident processing semantics. These semantics are controlled by incident processing rules. The incident processing rules are defined in an XML file and loaded and registered with the Diagnostic Framework during SOA Infrastructure startup.

If you encounter scenarios different from those listed in Table 11-1, you must work with Oracle Support Services to obtain a copy of customized incident processing rules and follow the directions related to registration and server restart.

Oracle Support Services can place a customized rules file (named custom-rules.xml) under the SOA Server instance home directory (for example, FMW_HOME/user_projects/domains/domain_name/servers/server_name). Example 11-1 shows a sample custom rules file in which when an ERROR level message is detected in the *-diagnostic.log from the oracle.soa.bpel.engine.ws module, the soa.composite.trail dump is executed.

Example 11-1 Sample Custom Rules File

<?xml version="1.0" encoding="UTF-8"?> 
<diagnosticRules xmlns="http://www.oracle.com/DFW/DiagnosticsFrameworkRules"
 xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"> 
<logDetectionConditions> 
<condition module="oracle.soa.bpel.engine.ws"/> 
</logDetectionConditions> 

<defaultActions> 
<dumpAction name="soa.composite.trail"> 
<argument name="ecid" value="ECID" valueType="Fact" mandatory="true"/> 
</dumpAction> 
</defaultActions> 

</diagnosticRules>

11.1.4 Supported Oracle SOA Suite Diagnostic Dumps

In addition to the diagnostic dumps available with Oracle WebLogic Server, Oracle SOA Suite supports the creation of the diagnostic dumps shown in Table 11-3.

Table 11-3 Supported Oracle SOA Suite Diagnostic Dumps

Dump Description

soa.env

Runtime environment dumps

soa.config

Runtime platform configuration dumps

soa.db

Database dumps

soa.composite

Deployed composite metadata dumps

soa.composite.trail

Instance audit trail dumps

soa.edn

Event dumps

soa.wsdl

Deployed composite WSDL/schema cache dumps


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.

To list the supported dumps:

  1. Connect to the server on which the SOA Infrastructure is installed.

    wls:/offline> connect('user_name', 'password',
    't3://myhost:8001')
    Connecting to t3://myhost:8001 with userid user_name ...
    Successfully connected to managed Server 'soa_server1' that belongs to
    domain 'soainfra'.
    
  2. 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.
    
  3. List the supported Oracle SOA Suite dumps.

    wls:/soainfra/serverConfig> listDumps(appName='soa-infra')
    adf.ADFConfigDiagnosticDump
    soa.composite
    soa.composite.trail
    soa.config
    soa.db
    soa.edn
    soa.env
    soa.wsdl
    
    Use the command describeDump(name=<dumpName>) for help on a specific dump.
    

    The supported Oracle SOA Suite dumps are described in the following subsections.

    For more information about listDumps and describeDump, see Chapter "Diagnostic Framework Custom WLST Commands" of Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

    For more information about Diagnostic Framework dumps, see Chapter "Diagnosing Problems" of Oracle Fusion Middleware Administrator's Guide.

11.1.4.1 Supported Runtime Environment Diagnostic Dumps (soa.env)

Table 11-4 provides details about supported runtime environment diagnostic dumps.

Table 11-4 Runtime Environment Diagnostic Dumps

Dump Name Dump Parameters/Dump Mode Information Captured

soa.env

  • Dump parameters:

    None

  • Dump Mode:

    ASYNC_SYNC

  • SOA runtime version, label (can be obtained from the Discovery MBean), and topology (information about the cluster of which the runtime version is a member).

  • Topology: Cluster and Oracle Coherence information such as cluster name, member name, whether the cluster is the leader, local members, machine ID, rack ID, and so on.

    The leader is generally the oldest node in the cluster. This may change over time as members leave and join the cluster. This senior member is responsible for maintaining cluster membership and making other decisions for the cluster. It also acts as the final arbiter in various protocols, such as the panic protocol.

  • Oracle Coherence messaging mode: Either unicast or multicast.


11.1.4.1.1 WLST Command Dump Description and Execution
  1. Enter the following WSLT command line syntax to display a dump description and execute a dump of soa.env.

    wls:/soainfra/serverConfig> describeDump(name='soa.env',appName='soa-infra')
    Name: soa.env
    Description: SOA Dump for runtime environment info: SOA runtime version, label,
    topology. ...
    Mandatory Arguments:
    Optional Arguments:
    
    wls:/soainfra/serverConfig> executeDump(name='soa.env',appName='soa-infra')
    Begin dumping EMInstanceProperties
    key=soaClusterName
    value=NULL
    key=label
    value=PCBPEL_11.1.1.6.0_GENERIC_111018.1315.1477
    key=CompositeLabel
    value=NULL
    key=version
    value=11.1.1.6.0
    key-HttpUrl
    value=http://myhost.us.oracle.com:8001
    End dumping EMInstanceProperties
    Cluster Info:
    -----------------------------------------------
    cluster name:null
    cluster is leader:true
    cluster is standalone:true
    

11.1.4.2 Supported Runtime Platform Configuration Diagnostic Dumps (soa.config)

Table 11-5 provides details about supported runtime platform configuration diagnostic dumps.

Table 11-5 Runtime Platform Configuration Diagnostic Dumps

Dump Name Dump Parameters/Dump Mode Information Captured

soa.config

  • Dump parameters:

    zip: (Optional) Supports the following values:

    - true: (Default value) Zips the output file and artifacts into one ZIP file.

    - false: Writes the dump text file and artifacts to the dump path location without compressing them into one ZIP file.

    output: (Optional) Specifies the alternate directory location to which to write dump files. If not specified, the diagnostic dump uses the Diagnostic Framework dump path.

  • Dump Mode:

    ASYNC_SYNC

deployed-composites.xml - A catalog of deployed composites, including their revisions.

Service engine configurations: The following configurations are persisted in MDS (soa/configuration/default/*.xml):

  • adapter-config.xml

  • b2b-config.xml

  • bpel-config.xml

  • bpmn-config.xml

  • businessrules-config.xml

  • cep-config.xml

  • edn-config.xml

  • mediator-config.xml

  • soa-infra-config.xml

  • workflow-config.xml

  • workflow-identity-config.xml

  • workflow-notification-config.xml


11.1.4.2.1 WLST Command Dump Description and Execution
  1. Enter the following WSLT command line syntax to display a dump description and execute a dump of soa.config:

    wls:/soainfra/serverConfig> describeDump(name='soa.config',appName='soa-infra')
    Name: soa.config
    Description: Description: SOA dump that captures SOA runtime configuration
                              info, such as deployed-composites.xml, service engine
                              configurations, etc.
    Mandatory Arguments:
    Optional Arguments:
       Name    Type     Description
       zip     BOOLEAN  Boolean flag (default to 'true') indicating if the dump
                        files need to be compressed into one single zip file,
                        true - dump into a single zip, false, otherwise.
       output  STRING   Path to output destination, a directory where the dump
                        content will be written to, default to DFW dump path if 
                        not specified ...
    
    wls:/soainfra/serverConfig> executeDump(name='soa.config',appName='soa-infra')
    
    Start dumping artifacts from MDS
    URI:deployed-composites/deployed-composites.xml to /tmp/soa_
    dumps139780820495.tmp/soa_config734535543.d
    
    Finished dumping specified MDS metadata to /tmp/soa_dumps139780820495.tmp/soa_
    config734535543.d
    
    Start dumping artifacts from MDS URI:soa/configuration/default/ to /tmp/soa_
    dumps139780820495.tmp/soa_config734535543.d/se-configurations
    
    Finished dumping specified MDS metadata to: /tmp/soa_dumps139780820495.tmp/soa_
    config734535543.d/se-configurations
    MDS artifacts dumped, next, compressing all dump files into:
    /tmp/oracle-dfw--1770056289547048694.tmp/soa_config364634563344231671.zip
    

    The executeDump command dumps deployed-composites.xml from the MDS repository and service engine configurations for all installed service engines into a single, compressed ZIP file (soa_config364634563344231671.zip).

  2. Enter the following WSLT command line syntax to execute a dump of soa.config with the zip parameter set to false. This setting writes the dump text file and artifacts to the dump path location without compressing them into one ZIP file.

    wls:/soainfra/serverConfig> executeDump(name='soa.config',appName='soa-infra',
    args={'zip':'false'})Start dumping artifacts from MDS
     URI:deployed-composites/deployed-composites.xml to:
     /tmp/oracle-dfw-7178460573556479044.tmp/soa_config199325881615155981.d
    Finished dumping specified MDS metadata to:
    /tmp/oracle-dfw-7178460573556479044.tmp/soa_config199325881615155981.d
    Start dumping artifacts from MDS URI:soa/configuration/default/ to:
    /tmp/oracle-dfw-7178460573556479044.tmp/soa_
    config199325881615155981.d/se-configurations
    Finished dumping specified MDS metadata to:
    /tmp/oracle-dfw-7178460573556479044.tmp/soa_
    config199325881615155981.d/se-configurations
    
  3. Examine the contents under the default dump path:

    [jdoe@myhost /tmp]$ ls -alR oracle-dfw-7178460573556479044.tmp
    oracle-dfw-7178460573556479044.tmp:
    total 52
    drwxr-----   3 jdoe dba   4096 Oct 24 15:43 .
    drwxrwxrwt 104 root root 36864 Oct 24 15:37 ..
    drwxr-----   4 jdoe dba   4096 Oct 24 15:43 soa_config199325881615155981.d
    -rw-r-----   1 jdoe dba    561 Oct 24 15:43 soa_config199325881615155981.txt
    
    oracle-dfw-7178460573556479044.tmp/soa_config199325881615155981.d:
    total 16
    drwxr----- 4 jdoe dba 4096 Oct 24 15:43 .
    drwxr----- 3 jdoe dba 4096 Oct 24 15:43 ..
    drwxr----- 2 jdoe dba 4096 Oct 24 15:43 deployed-composites
    drwxr----- 2 jdoe dba 4096 Oct 24 15:43 se-configurations
    
    oracle-dfw-7178460573556479044.tmp/soa_
    config199325881615155981.d/deployed-composites:
    total 12
    drwxr----- 2 jdoe dba 4096 Oct 24 15:43 .
    drwxr----- 4 jdoe dba 4096 Oct 24 15:43 ..
    -rw-r----- 1 jdoe dba 1437 Oct 24 15:43 deployed-composites.xml
    
    oracle-dfw-7178460573556479044.tmp/soa_
    config199325881615155981.d/se-configurations:
    total 56
    drwxr----- 2 jdoe dba 4096 Oct 24 15:43 .
    drwxr----- 4 jdoe dba 4096 Oct 24 15:43 ..
    -rw-r----- 1 jdoe dba  267 Oct 24 15:43 adapter-config.xml
    -rw-r----- 1 jdoe dba  425 Oct 24 15:43 b2b-config.xml
    -rw-r----- 1 jdoe dba 2040 Oct 24 15:43 bpel-config.xml
    -rw-r----- 1 jdoe dba 1525 Oct 24 15:43 bpmn-config.xml
    -rw-r----- 1 jdoe dba  895 Oct 24 15:43 businessrules-config.xml
    -rw-r----- 1 jdoe dba  119 Oct 24 15:43 cep-config.xml
    -rw-r----- 1 jdoe dba  215 Oct 24 15:43 edn-config.xml
    -rw-r----- 1 jdoe dba  836 Oct 24 15:43 mediator-config.xml
    -rw-r----- 1 jdoe dba 1148 Oct 24 15:43 soa-infra-config.xml
    -rw-r----- 1 jdoe dba 2693 Oct 24 15:43 workflow-config.xml
    -rw-r----- 1 jdoe dba 2146 Oct 24 15:43 workflow-identity-config.xml
    -rw-r----- 1 jdoe dba  605 Oct 24 15:43 workflow-notification
    

11.1.4.3 Supported Database Diagnostic Dumps (soa.db)

Table 11-6 provides details about supported database diagnostic dumps. The types of database information captured include data shape information such as counts by state and growth patterns for Oracle SOA Suite schemas and the MDS schema.

Table 11-6 Database Diagnostic Dumps

Dump Name Dump Parameters/Dump Mode Information Captured

soa.db

  • Dump parameters:

    None

  • Dump Mode:

    ASYNC_SYNC

BPEL database table growth data using JDBC-based access to execute the query and dump the result:

SELECT dt.table_name table_name,ds.bytes/1024/1024
segment_size_mb, ds.extents extents_used, dt.num_rows
total_rows, to_char(dt.last_analyzed,'YYYY-MM-DD
HH24:MI:SS') last_analyzed_date FROM dba_segments ds,
dba_tables dt WHERE dt.owner = ds.owner and dt.owner =
'schema_user_name' and dt.tablespace_name = 
ds.tablespace_name and dt.table_name = ds.SEGMENT_NAME 
and ds.segment_type = 'TABLE' and dt.table_name in 
('CUBE_INSTANCE', 'MEDIATOR_CASE_INSTANCE','COMPOSITE_
INSTANCE', 'AUDIT_TRAIL', 'WORK_ITEM', 'DLV_MESSAGE',
'XML_DOCUMENT','DOCUMENT_CI_REF')

11.1.4.3.1 WLST Command Dump Description and Execution
  1. Enter the following WSLT command line syntax to display a dump description and execute a dump of soa.db:

    wls:/soainfra/serverConfig> describeDump(name='soa.db',appName='soa-infra')
    Name: soa.db
    Description: SOA Dump for SOA runtime DB usage info.
    Mandatory Arguments:
    Optional Arguments:
    
    wls:/soainfra/serverConfig> executeDump(name='soa.db',appName='soa-infra')
    EXECUTE QUERY 
    SELECT dt.table_name table_name,ds.bytes/1024/1024 segment_size_mb, ds.extents
    extents_used, dt.num_rows total_rows, to_char(dt.last_analyzed,
    'YYYY-MM-DD HH24:MI:SS') last_analyzed_date FROM dba_segments ds,
    dba_tables dt WHERE dt.owner = ds.owner and dt.owner ='schema_user_name' 
    and dt.tablespace_name = ds.tablespace_name and dt.table_name = ds.SEGMENT_NAME
    and ds.segment_type = 'TABLE' and dt.table_name in ('CUBE_INSTANCE', 
    'MEDIATOR_CASE_INSTANCE','COMPOSITE_INSTANCE', 'AUDIT_TRAIL', 'WORK_ITEM', 
    'DLV_MESSAGE','XML_DOCUMENT','DOCUMENT_CI_REF')
    COMMENT: BPEL DB GROWTH DATA.
    TABLE_NAME   SEGMENT_SIZE_MB  EXTENTS_USED TOTAL_ROWS LAST_ANALYZED_DATE
    -------------------------------------------------------------------------
    ResultSet Metadata:weblogic.jdbc.wrapper.ResultSetMetadata_oracle_jdbc_driver_
    OracleResultSetMetadata@76a4b0
    RECORD #1:
    TABLE_NAME: COMPOSITE_INSTANCE
    SEGMENT_SIZE_MB:0
    EXTENTS_USED:1
    TOTAL_ROWS:9
    LAST_ANALYZED_DATE:2011-09-30 22:02:25
    RECORD #2:
    TABLE_NAME:DOCUMENT_CI_REF
    SEGMENT_SIZE_MB:0
    EXTENTS_USED:1
    TOTAL_ROWS:0
    LAST_ANALYZED_DATE:2011-09-30 22:02:34
    RECORD #3:
    TABLE_NAME:WORK_ITEM
    SEGMENT_SIZE_MB:0
    EXTENTS_USED:1
    TOTAL_ROWS:0
    LAST_ANALYZED_DATE:2011-09-30 22:02:36
    RECORD #4:
    TABLE_NAME:AUDIT_TRAIL
    SEGMENT_SIZE_MB:0
    EXTENTS_USED:1
    TOTAL_ROWS:8
    LAST_ANALYZED_DATE:2011-09-30 22:02:39
    

    This dump shows the query string and records from the result set.

11.1.4.4 Supported Deployed Composite Metadata Diagnostic Dumps (soa.composite)

Table 11-7 provides details about supported deployed composite metadata diagnostic dumps. The types of information captured include the current composite processed when an incident occurs, MDS artifact references (for example, namespace exports), and abnormal transactions.

Table 11-7 Deployed Composite Metadata Diagnostic Dumps

Dump Name Dump Parameters/Dump Mode Information Captured

soa.composite

  • Dump parameters:

    compositeName: (Optional) Composite name that includes MDS recorded artifacts to dump. If a value is not specified (null or blank), compositeName assumes a wild card (*).

    partition: (Optional) Partition name in which the composite is deployed. If not specified, the partition of the default composite specified in the deployed-composites.xml file is assumed (for example, default, partition_01, and my_partition).

    revision: (Optional) Composite revision that includes MDS recorded artifacts to dump. If not specified, the revision of the default composite as specified in the deployed-composites.xml file is assumed. A wild card (*) to match any revision is supported.

    zip: (Optional) Whether or not to compress the dump output into a ZIP file. The following values are supported:

    - true: (Default value) Compresses dump files into one ZIP file.

    - false: Writes dump to a text file and artifacts to the dump path location without compressing them into one ZIP file.

    - output: (Optional) Alternate directory location to which to write dump files. If not specified, the diagnostic dump uses the Diagnostic Framework dump path.

  • Dump Mode:

    ASYNC_SYNC

Per composite metadata from MDS:

  • All the MDS recorded artifacts for the specified composites.

  • The text dump file contains logging information about which composite's MDS artifacts are dumped and to where.

  • All dump files compressed into one ZIP file.

  • User-specified output file location for WLST use.

  • One or more generated scratch_entries.txt files that contain the listings of file and directory entries of the scratch area for the composite. The location of the scratch area is indicated by the composite-revision element in deployed-composites/deployed-composites.xml.


11.1.4.4.1 WLST Command Dump Description and Execution
  1. Enter the following WSLT command line syntax to display a dump description and execute a dump of soa.composite:

    wls:/soainfra/serverConfig> describeDump(name='soa.composite'
    ,appName='soa-infra')
    Name: soa.composite
    Description: SOA Dump that captures artifacts from MDS, and listing of entries
    in each composite's scratch area, dump MDS artifacts for composites that
    matches specified composite name, specified partition, specified revision, also
    support wild card '*' as composite name/partition/revision, meaning dump MDS
    artifacts for composites with any composite name/partition/revision.
    Mandatory Arguments:
    Optional Arguments:
      Name        Type      Description
      zip         BOOLEAN   Boolean flag (default to 'true') indicating if the dump
                            files need to be compressed into one single zip file,
                            true - dump into a single zip file, false, otherwise.
      revision    STRING    composite revision, e.g. '1.0', '2.0', or wild card
                             '*'- will match any revision. 
      partition   STRING    partition of the composite, default is 'default', 
                            support wild card '*' as partition name, meaning any
                            partition.
      compositeName STRING composite name, e.g., 'OrderProcessing', or wild card
                             '*' - dump MDS recorded artifacts for all the deployed
                            composites in the specified partition.
       output      STRING   Path to output destination, a directory where the
                            dump content will be written to, default to DFW dump
                            path if not specified.
    
    wls:/soainfra/serverConfig> executeDump(name='soa.composite',
     appName='soa-infra'),arg=('compositeName':'WSInMedPubBpelSubFileOut',
    'revision':'1.0,'partition':'partition_1','output'':'/home/myhome//COMPOSITE_DUMP_
    DIR_3'})
    Start dumping composite [name=WSInMedPubBpelSubFileOut, partition=partition_1,
    revision= 1.0 ] MDS metadata to :/tmp/soa_dumps1019331262763443905.tmp/
    soa_composite4533356433976235311.d/partition_1/WSInMedPubBpelSubFileOut_
    rev1.0
    Finished dumping composite MDS metadata to :/tmp/soa_dumps
    1019331262763443905.tmp/soa_composite4533356433976235311.d/partition_
    1/WSInMedPubBpelSubFileOut_rev1.0
    

    In this example, no zip parameter is specified. Because the default value is true, a single dump output file is created at the dump location /home/myhome//COMPOSITE_DUMP_DIR_3.

11.1.4.5 Supported Instance Audit Trail Diagnostic Dumps (soa.composite.trail)

Table 11-8 provides details about supported instance audit trail diagnostic dumps. The type of information captured includes the deployed composite instance audit trail for a given ECID.

Table 11-8 Instance Audit Trail Diagnostic Dumps

Dump Name Dump Parameters/Dump Mode Information Captured

soa.composite.trail

  • Dump parameters:

    ecid (mandatory). The execution content ID. If not specified, a DumpExecutionException error is thrown.

  • Dump Mode:

    ASYNC_SYNC

  • The audit trail associated with the ECID (per composite) (therefore, all of its components). This is for the execution of message routing triggered by an inbound message. The audit trail is an XML CLOB obtained by calling the following Facade API in the current runtime context:

    oracle.soa.management.facade.Locator.getAuditTrail(ECID ecid)

  • Composite instances information.

  • Component instances information for each composite instance.

  • EDN information from the Facade API.

  • Sensor instances information for each composite instance.


11.1.4.5.1 WLST Command Dump Description and Execution
  1. Enter the following WSLT command line syntax to display a dump description and execute a dump of soa.composite.trail:

    wls:/soainfra/serverConfig> describeDump(name='soa.composite.trail'
    ,appName='soa-infra')
    Name: soa.composite.trail
    Description: Composite instance audit trail dump for a given ECID
    Mandatory Arguments:
       Name        Type       Description
       ecid        STRING     ECID from an incident
    Optional Arguments:
    
    wls:/soainfra/serverConfig> executeDump(name='soa.composite.trail',
    appName='soa-infra',args=('ecid':'cf1cec292805f383.236c6d88:132bc9b7486:-8000=0
    000000000121b'})
    BEGIN----------------AUDIT TRAIL::: ECID:cf1cec292805f383.236c6d88:132bc9b7486
    :-8000=0000000000121b++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    <audit_trail ecid="cf1cec292805f383.236c6d88:132bc9b7486:-8000=0000000000121b">
    <entry instanceId="service:10001" date="20-11-09-39T16:21:46"
    timestamp="1317424906775" state="2" actionType="operation" actionName="execute"
    subType="binding.ws" type="service"><entityName>MyInputService</entityName>
    <compositeInstanceId>10001</compositeInstanceId><compositeName>WSInMedPubBpelSu
    bFileOut</compositeName><compositeDN>default/WSInMedPubBpelSubFileOut!1.0
    </compositeDN><applicationName>default</applicationName></entry><entry
    instanceId="mediator:F7BF03D8EBBA11E0BFEEFB426F4C514D"parentInstanceId=
    "service:10001" date="2011-0930T16:21:48"timestamp="131742908689" 
    state="2" <type="component"subType="mediator">entityName>MediatorPub
    </entityName><compositeInstanceId>10001</compositeInstanceId><compositeName>
    WSInMedPubBpelSubFileOut</compositeName><compositeDN>default/
    WSInMedPubBpelSubFileOut!1.0</compositeDN><applicationName>default
    </applicationName></entry></audit trail>
    END--------------AUDIT TRAIL:::
    ECID:cf1cec292805f383.236c6d88:132bc9b7486:-8000=0000000000121b
    
    BEGIN------------------FACADE(EDN) +++++++++++++
    oracle.soa.management.internal.facade.edn.EDNImpl@14b5caec
    END------------------FACADE(EDN) +++++++++++++
    BEGIN------------------FACADE(Composite Instances) +++++++++++++
    DN: default/WSInMedPubBpelSubFileOut!1.0 > Instance: 10001 creation-date: Fri
    Sep 30 16:21:46 PDT 2011 state {-1}: STATE_UNKNOWN
    -> componentinstance: MediatorPub type: mediator state: STATE_COMPLETED_
    SUCCESSFULLY
    DN: partition_3/WSInMedPubBpelSubFileOut!1.0 > Instance: 8 creation-date: Thu
    Sep 29 15:04:13 PDT 2011 state (-1): STATE_UNKNOWN
    -> componentinstance: BpelSub type: bpel state: STATE_SUSPENDED
    

    For information about obtaining the ECID, see Section 13.1, "Monitoring the Audit Trail and Process Flow of a BPEL Process Service Component."

11.1.4.6 Supported Event Diagnostic Dumps (soa.edn)

Table 11-9 provides details about supported event diagnostic dumps. The types of information captured include Oracle Streams Advanced Queuing (SAQ) logging records and event metadata among currently deployed applications.

Table 11-9 Event Diagnostic Dumps

Dump Name Dump Parameters/Dump Mode Information Captured

soa.edn

  • Dump parameters:

    dumpEDNDBLOG: Supports the following values:

    - true: Dumps all records logged during AQ stored procedure calls (for debugging purposes).

    - false: Does not dump EDN database log messages.

  • Dump Mode:

    ASYNC_SYNC

  • EDN event bus state variables.

  • EDN subscriber/publisher information for all deployed composites, and so on.

All information is written to the dump text file.


11.1.4.6.1 WLST Command Dump Description and Execution
  1. Enter the following WSLT command line syntax to display a dump description and execute a dump of soa.edn:

    wls:/soainfra/serverConfig> describeDump(name='soa.edn',appName='soa-infra')
    Name: soa.edn
    Description: SOA Dump for EDN BusinessEventBus status info, and EDN DB Log
    records.
    Mandatory Arguments:
    Optional Arguments:
       Name         Type       Description
       dumpEDNDBLOG BOOLEAN    SOA Dump for EDN BusinessEventBus status info, and
                               EDN DB Log records.
    
    wls:/soainfra/serverConfig> executeDump(name='soa.edn',appName='soa-infra')
    
    Type:oracle.integration.platform.blocks.event.saq.SAQBusinessEventBus
    Configuration:null
    Status: running=true started=true
    ThreadCount:3
    RetryCount:3
    In Global: Tx:false
    Cluster Info:oracle.integration.platform.blocks.cluster.CoherenceCluster
    Interface1mpt@163bd717
    SharedEDN:false
    OOAO Queue Name:edn_ooao_queue
    Java Subscriber Name:edn java subscriber
    Subscription Info:
    No namespace subscription...
    QName subscriptions:
    =============================================================
    qname={http://schemas.oracle.com/events/edl/ActionOccur}ADEvent
    subscriptions=
    id=default/WSInMedPubBpelSubFileOut!1.0*soa_7a055d6a-8402-49c2-ac56-5f85cbf3d7f/
    BpelSub, consistencyLevel=ONE_AND_ONLY_ONE, filter=XPath Filter: starts-with(/
    be:business-event/be:content/ns0:ActionOccurrence/ns0:ParentEntityType/@value,
     'A'), runAsRoles=[$publisher]
    id=partition_1/WSInMedPubBpelSubFileOut!1.0*soa_80a169ab1-395a-4b87-9986-9fa2742a8bd3/
    BpelSub, consistencyLevel=ONE_AND_ONLY_ONE, filter=XPath Filter: starts-with(/
    be:business-event/be:content/ns0:ActionOccurrence/ns0:ParentEntityType/@value,
     'A'), runAsRoles=[$publisher]
    EventThreadContextInfo:
    EventTargets:
    Event:partition_1/WSInMedPubBpelSubFileOut!1.0*soa0a169ab1-395a-4b87-9986-9fa2742a9bd3/
    BpelSub:::oracle.fabric.BPELServiceEngine@163bd6b5
    Event:default/WSInMedPubBpelSubFileOut!1.0*soa7a055d6a-8402-49c2-ac56-5f85cbf3
    d7f/BpelSub:::oracle.fabric.BPELServiceEngine@163bd6b5
    EDN DB Log enabled:false
    

    The executeDump command dumps the event bus status variables (1mpt@163bd717) and event publish and subscription information. No log messaging information is dumped because the edn-db-log is set to false. You can enable the edn-db-log at the following URL:

    http://host_name:port/soa-infra/events/edn-db-log
    

    Notes:

    • You must have the administrator privilege to enable/disable the edn-db-log.

    • Always disable the edn-db-log after a debugging session to disable logging. This prevents excessive database growth in the EDN database log table. If the edn-db-log remains enabled, then debugging messages related to events that are published/enqueued into the database and subscribed to/dequeued from the database continue to be persisted into certain EDN database log tables. This causes the table to grow indefinitely.

11.1.4.7 Supported Deployed Composite WSDL/Schema Cache Diagnostic Dumps (soa.wsdl)

Table 11-10 provides details about supported deployed composite WSDL/schema cache diagnostic dumps.

Table 11-10 Deployed Composite WSDL/Schema Cache Diagnostic Dumps

Dump Name Dump Parameters/Dump Mode Information Captured

soa.wsdl

  • Dump parameters:

    compositeName: (Optional) Composite name that includes key service definition information (WSDLs) to dump, including WSDLs referenced and XSDs referenced. If a value is not specified (null or blank), compositeName assumes a wild card (*).

    partition: (Optional) Partition name in which the composite is deployed. If not specified, the partition of the default composite specified in the deployed-composites.xml file is assumed. A wild card (*) to match any composite is supported.

    revision: (Optional) Composite revision that includes the service definition information (from WSDLs) to dump. If not specified, the revision of the default composite as specified in the deployed-composites.xml file is assumed. A wild card (*) to match any revision is supported.

  • Dump Mode:

    ASYNC_SYNC

  • Composite distinguished name (DN). For example: compositeDN:partition_1/WSInMedPubBpelSubFileOut!1.0*soa_8a169ab1-395a-4b87-9986-9fa2742a8bd3.

  • Is it the default in the series

  • Composite name

  • Composite state (on or off)

  • Composite mode (active or retired)

  • The qualified name and the target namespace for all service definitions (including those from shared WSDLs): javax.wsdl.Definition objects:

    - Service name: QName javax.wsdl.Definition.getQName()

    - Target namespace: javax.wsdl.Definition.getTargetNamespace()

  • SchemaManager state variables:

    - SchemaManager.isPostDeploy()

    - SchemaManager.isShared()

    - SchemaManager.schemaAddedSinceLastBuild()

  • XML schema definitions referenced by service definitions:

    - The message type QName

    - The message type SchemaTargetNamespace

    - The message type TargetNS


11.1.4.7.1 WLST Command Dump Description and Execution
  1. Enter the following WSLT command line syntax to display a dump description and execute a dump of soa.wsdl:

    wls:/soainfra/serverConfig> describeDump(name='soa.wsdl',appName='soa-infra')
    
    Name: soa.wsdl
    Description: SOA Dump that captures service definition info caches for
                 composite(s) that matches specified composite name, specified
                 partition, specified revision, also support wild card '*' as 
                 composite name/partition/revision, meaning dump service
                 definitions WSDL/XSD caches for composites with any composite
                 name/partition/revision.
    Mandatory Arguments:
    Optional Arguments:
       Name        Type       Description
       revision    STRING     composite name, e.g. '1.0', '2.0', or wild card '*'
                              - will match any revision.
       partition   STRING     partition of the composite, default is 'default',
                              support wild card '*' as partition name, meaning
                              any partition.
       compositeName STRING  composite name, e.g., 'OrderProcessing', or wild card
                              '*' - dump cache for all the deployed composites in
                              the specified partition.
    
    wls:/soainfra/serverConfig> executeDump(name='soa.wsdl',appName='soa-infra'
    ,arg=('compositeName':'WSInMedPubBpelSubFileOut',
    'revision':'1.0','partition':'partition_1'})compositeDN:partition_
    1/WSInMedPubBpelSubFileOut!1.0*soa_8a169ab1-2060-4b87-9986-9fa2742a8bd3
    ----------------------------------------------------------------------
    is default in series:true
    composite application name:partition_1
    composite name:WSInMedPubBpelSubFileOut
    composite state:on
    composite mode:active
    WSDLManager Instance:oracle.fabric.common.wsdl.WSDLManager@164ec201
    Cached wsdl Definitions for the specified composite: including any shared
    wsdls if there are any:
    key=http://xmlns.oracle.com/bpel/workflow/taskService
    value=QName:{http://xmlns.oracle.com/bpel/workflow/taskService}
    TaskServicetarget name space:http://xmlns.oracle.com/bpel/workflow/taskService
    key=urn:MyTestWsdl
    value=QName:{urn:MyTestWsdl}target name space:urn:MyTestwsdl
    key=http://xmlns.oracle.com/adapter/file/LixinSandboxes/WSInMedPubBpelSubFile
    Out/FileWrite
    value=QName:{http://xmlns.oracle.com/pcbpel/adapter/file/LixinSandboxes/
    WSInMedPubBpelSubFileOut/FileWrite}FileWritetarget name space:http:
     //xmlns.oracle.com/pcbpel/adapter/file/LixinSandboxes/
    WSInMedPubBpelSubFileOut/FileWrite
    count of all cached entries:3
    SchemaManager instance:oracle.fabric.common.wsdl.SchemaManager@164ec1f8
    SchemaManager.isPostDeploy():true
    SchemaManager.isShared():false
    SchemaManager.schemaAddressSinceLastBuild():false
    Cached schema count:0
    WSDLManager instance:oracle.fabric.common.wsdl.WSDLManager@14b5b8b0
    cached wsdl definitions for the specified composite: including shared wsdls
    if there is any:
    ---------------------------------------------------------------------------
    key=http://xmlns.oracle.com/bpel/workflow/taskService
    value=QName:{http://xmlns.oracle.com/bpel/workflow/taskService}
    TaskServicetarget name space:http://xmlns.oracle.com/bpel/workflow/taskService
    count of all cached entries:1
    SchemaManager instance:oracle.fabric.common.wsdl.SchemaManager@145b8cc
    SchemaManager.isPostDeploy():false
    SchemaManager.isShared():true
    SchemaManager.schemaAddressSinceLastBuild():true
    Cached schema count:0
    
    WSDLManager instance:oracle.fabric.common.wsdl.WSDLManager@14b58b0
    WSDLManager instance:oracle.fabric.common.wsdl.WSDLManager@14b58b0
    cached wsdl definitions for the specified composite: including shared wsdls
    if there is any:
    -------------------------------------------------
    
    key=http://xmlns.oracle.com/bpel/workflow/taskService
    value=QName:{http://xmlns.oracle.com/bpel/workflow/taskService}
    TaskServicetarget name space:http://xmlns.oracle.com/bpel/workflow/taskService
    count of all cached entries:1
    SchemaManager instance:oracle.fabric.common.wsdl.SchemaManager@145b8cc
    SchemaManager.isPostDeploy():false
    SchemaManager.isShared():true
    SchemaManager.schemaAddressSinceLastBuild():true
    Cached schema count:0
    

11.1.5 Supported DMS Metrics

DMS metrics with noun types are exposed as Oracle SOA Suite MBeans to use for diagnosing problems. This section describes the supported DMS metrics.

Table 11-11 shows the supported service engine sensors.

Table 11-11 Service Engine Sensors

Noun Path Noun Type Sensor Type

/soainfra/engines/[bpel|workflow|mediator|decision]/message_processing

soainfra_message_processing

faultedRequestProcessingTime

Phase Event

   

faultedPostProcessingTime

Phase Event

   

requestProcessingTime

Phase Event

   

postProcessingTime

Phase Event

   

activeRequest

State

/soainfra/engines/bpel/requests/[REQUEST_TYPE]

 

active

State

   

scheduled

State

/soainfra/engines/workflow/Task/service

soainfra_wfRequest

time

Phase

   

count

Event

/soainfra/engines/workflow/Task/[METHOD_NAME]

 

time

Phase

   

count

Event

/soainfra/engines/workflow/TaskQuery/[METHOD_NAME]

 

time

Phase

   

count

Event

/soainfra/engines/workflow/TaskMetadata/getTaskDefinition

 

time

Phase

   

count

Event

/soainfra/engines/workflow/Verification/[METHOD_NAME] (only methods: authenticateUser, getPermissableTaskActions, and canUserPerfomTaskAction)

 

time

Phase

   

count

Event

/soainfra/engines/workflow/TaskNotification/notifyForTask

 

time

Phase

   

count

Event

/soainfra/engines/workflow/AssignmentRules/executeRules

 

time

Phase

   

count

Event

/soainfra/engines/bpel/dispatcher/

soainfra_bpel_dipatcher

maxThreads

State

   

avgLifeTime

State

   

avgRequestCountPerSecond, and so on

State


Table 11-12 shows the supported binding sensors.

Table 11-12 Binding Sensors

Noun Path Noun Type Sensor Type

/soainfra/bindings/[inbound|outbound]/[ws|sdo|jca|b2b]

soainfra_binding

processRequests

Phase

   

requests

Event

   

errors

Event


Table 11-13 shows the supported composite sensors.

Table 11-13 Composite Sensors

Noun Path Noun Type Sensor Type

/soainfra/apps/[APP_NAME]/[COMPOSITE_DN]

soainfra_composite

status

State

   

instantiated

Event

   

successfulInstanceProcessingTime

Phase

   

faultedInstanceProcessingTime

Phase

/soainfra/apps/[APP_NAME]/[COMPOSITE_NAME]/[REVERSION]/[COMPONENT_NAME]

/decision/[INTERACTION_PATTERN]/[INTERACTION_PATTERN_NAME]

soainfra_decision_interaction

executed

Event

   

executionTime

Phase

/soainfra/apps/[COMPOSITE_DN]/[COMPONENT_NAME]/[ACTIVITY_NAME] (for bpel)

soainfra_bpel_activity

started

Event

   

executionTime

Phase

   

faultedExecutionTime

Phase

   

Standard deviation (the user interface calculates this as it comes through)

 

/soainfra/apps/[APP_NAME]/[COMPOSITE_NAME]/[VERSION]/[COMPONENT_NAME] /state/

soainfra_wfStateEvent

[ASSIGNED

|COMPLETED

|ERRORED

|EXPIRED

|SUSPENDED]

Event

/soainfra/apps/[APP_NAME]/[COMPOSITE_NAME]/[VERSION]/[COMPONENT_NAME] /outcome/

soainfra_wfOutcomeEvent

[OUTCOME NAME]

Event

/soainfra/apps/[APP_NAME]/[COMPOSITE_NAME]/[VERSION]/[COMPONENT_NAME] /taskCompletion/

soainfra_wfTaskCompletionTime

time

Phase


Table 11-14 shows the supported reference and service sensors.

Table 11-14 Reference and Service Sensors

Noun Path Noun Type Sensor Type

/soainfra/apps/[APP_NAME]/[COMPOSITE_NAME]/[REVERSION]/[REFERENCE_NAME]

soainfra_reference

processOutboundMessagesEvents

Event

   

Errors

Event

   

processOutboundMessages

Phase

/soainfra/apps/[APP_NAME]/[COMPOSITE_NAME]/[REVERSION]/[SERVICE_NAME]

soainfra_service

processInboundMessagesEvents

Event

   

Errors

Event

   

processInboundMessages

Phase


Table 11-15 shows the supported Oracle B2B binding sensors.

Table 11-15 Oracle B2B Binding Sensors

Noun Path Noun Type Sensor Type

/soainfra/bindings/b2b/document_type/[inbound|outbound]/[DOCUMENT_NAME]

/soainfra/bindings/b2b/[inbound|outbound]

soainfra_b2b_document

soainfra_b2b_document_dir

processMessagesEvents

Event

   

processMessagesErrors

Event

   

processMessages

Phase Event

   

processMessageSize

State

/soainfra/bindings/b2b/trading_partner/[from|to]/[TRADING_PARTNER_NAME]

/soainfra/bindings/b2b/[from|to]/

soainfra_b2b_tradingPartner

soainfra_b2b_tradingPartner_dir

processMessagesEvents

Event

   

processMessagesErrors

Event

   

processMessages

Phase Event

   

processMessageSize

State

/soainfra/bindings/b2b/endpoint/[inbound|outbound]/[END_POINT]

/soainfra/bindings/b2b/[inbound|outbound]/

soainfra_b2b_endpoint

soainfra_b2b_endpoint_dir

endPointProtocol

State

   

endPointStatus

State

   

processMessagesEvents

Event

/soainfra/bindings/b2b/agreement/[AGREEMENT_NAME]

soainfra_b2b_agreement

processMessagesEvents

Event

/soainfra/bindings/b2b/activeEntities

soainfra_b2b_active_entities

activeTradingPartners

activeAgreements

activeDocuments

State

State

State

/soainfra/apps/[APP_NAME]/[COMPOSITE_NAME]/[REVERSION]/[SERVICE_NAME]/[TRADING_PARTNER_NAME]

soainfra_service_b2b_tradingPartner

processMessagesEvents

Event

   

processMessagesErrors

Event

   

processMessages

Phase Event

   

processMessageSize

State

/soainfra/apps/[APP_NAME]/[COMPOSITE_NAME]/[REVERSION]/[REFERENCE_NAME]/[TRADING_PARTNER_NAME]

soainfra_reference_b2b_tradingPartner

processMessagesEvents

Event

   

processMessagesErrors

Event

   

processMessages

Phase Event

   

processMessageSize

State


Table 11-16 shows the supported Oracle User Messaging Service sensors.

Table 11-16 Oracle User Messaging Service Event Bridge Metrics

Noun Path Noun Type Sensor Type

/soainfra/eventBridge/rfidBridge

soinfra_rfidBridge

eventsIn

Event

   

eventsOut

Event

   

eventsProcess

Phase Event

   

errors

Event

/soainfra/eventBridge/rfidBridge/device/[SERVER_NAME]/[DEVICE_NAME]

soainfra_rfidBridge_device

eventsIn

Event

   

eventsOut

Event

   

eventsProcess

Phase Event

   

status

State

/soainfra/eventBridge/rfidBridge/server/[SERVER_NAME]

soainfra_rfidBridge_server

status

State


11.2 Creating Watches and Notifications

You can create Oracle SOA Suite watches and send notifications around diagnosable conditions based on metrics collected from Oracle SOA Suite MBeans. When a watch expression evaluates to true (for example, heap space exceeds a specified amount), a notification is sent.

The message IDs shown in Table 11-17 have been assigned for diagnostic purposes. When you create a watch in Oracle WebLogic Server Administrator's Console, you must follow these naming conventions. The prefix for Oracle SOA Suite-related watches is SOA-message_ID.

Table 11-17 Message Prefixes

Scenario Message-ID Dumps Executed

Memory

SOA-900000

  • soa.env

  • soa.config

  • java.sysprops

Deployment hang

SOA-900001

  • soa.env

  • soa.config

Data source

SOA-900002

  • soa.env

  • soa.config

  • soa.db


You can also link a WLDF notification to the watch. If you link the out-of-the-box Oracle Fusion Middleware Diagnostic Framework notification (named FMWDFW notification), then a set of SOA specific dumps are executed. These dumps provide runtime information about the situation and environment. The list of dumps to execute is determined by predefined XML incident rules files.

Other notifications (like email) can also be linked to the watch.

The following watch automatically triggers dumps of soa.env and soa.config.

To create watches and notifications:

  1. Log in to Oracle WebLogic Server Administration Console.

    http://host:port/console
    
  2. In the Domain Structure, expand Diagnostics, and select Diagnostic Modules.

    The Summary of Diagnostic Modules page appears.

    You configure a diagnostic system module to monitor an aspect of a server or server resource. You can configure multiple system modules to monitor different aspects of a server, but only one such module can be active on a server.

  3. In the Diagnostic System Modules section, click Module-[Module_Name] (for example, Module-FMWDFW).

  4. On the Settings for Module_Name page, select Watches and Notifications > Watches.

  5. In the Watches section, click New.

    The Create a Diagnostic Watch page is displayed.

  6. Enter the following details to create a watch, and click Next.

    Field Description

    Watch Name

    Enter a name for the watch (for this example, SOA-900000#soa-infra#MemoryWatch is entered).

    The name of the watch must conform to the following pattern:

    message-id#soa-infra#some_other_text
    

    For example, SOA-900000#soa-infra#MemoryWatch.

    This is necessary because the watch name coordinates the Diagnostic Framework incident processing actions when watch conditions evaluate to true. Not following this pattern results in Oracle SOA Suite dumps not getting triggered when Oracle SOA Suite incidents are created.

    For additional information, see Table 11-17.

    If the watch is set up with the FMWDFW notification, the notification handler creates an incident that corresponds to the message-id specified in the watch name.

    Watch Type

    Select an option:

    • Collected Metrics: Sets a watch based on metrics collected from MBean attributes. It is recommended that you select this option because it works for the scenarios described in Table 11-1.

    • Server Log: Sets a watch based on data written to server logs. This type is only useful for extending an existing log watch such as StuckThread to include Oracle SOA Suite dumps.

    • Event Data: This option is not applicable because Oracle SOA Suite is not using any WLDF-based instrumentation.

    Enable Watch

    Select to enable a watch.


    The Configure Watch Rule Expressions page for adding an expression to the watch is displayed.

  7. Click Add Expression.

    The Add Expression wizard is displayed.

  8. In the MBean Server location list, select the Oracle WebLogic Server MBean server for the expression you want to configure (for example, ServerRuntime).

  9. Click Next.

  10. Select the Select an MBean Type from the following list button.

  11. In the MBean Type list, select the MBean to use for collecting diagnostic information (for this example, Oracle WebLogic Server MBean weblogic.management.runtime.JRockitRuntimeMBean is selected).

    Description of sca_createwatch4.gif follows
    Description of the illustration sca_createwatch4.gif

  12. Click Next.

    The Select Instances page is displayed.

  13. From the Instance list, select the instance name or specify an instance name pattern to use to identify the metric for the expression.

  14. Click Next.

  15. Enter the following details to create a watch rule expression, and click Finish.

    Field Description

    Message Attribute

    Select a message attribute (for this example, HeapFreePercent is selected).

    The attributes that are displayed for selection are part of the MBean that you selected in Step 11. For example, if you selected:

    oracle.dms.name=/soainfra/engines/bpel/request/system.type=soa_infra_bpel_requests
    

    You see assigned attributes such as active_count, active_maxValue, active_minValue, scheduled_count, and others.

    Operator

    Select an operator (for this example, < is selected).

    Value

    Enter a value (for this example, 100 is specified).


    The Configure Watch Rule Expressions page is displayed with the watch rule expression you created.

    Description of sca_createwatch1.gif follows
    Description of the illustration sca_createwatch1.gif

  16. Click Next.

    The Config Watch Alarm page is displayed.

  17. Optionally specify an alarm and the alarm's reset value for the watch.

  18. Click Next.

    The Configure Watch Notifications page is displayed.

  19. In the Available table, select a notification to assign to the watch and click >.

    Description of sca_createwatch2.gif follows
    Description of the illustration sca_createwatch2.gif

    When a watch rule expression evaluates to true, a notification is triggered. This notification is handled by the Diagnostic Framework if the FMWDFW notification is selected, which links it to the watch. The FMWDFW notification is automatically shipped with Oracle SOA Suite. Oracle recommends that you select this notification because it creates the Oracle SOA Suite dumps described in Section 11.1.4, "Supported Oracle SOA Suite Diagnostic Dumps."

    The notification handler creates a problem incident package that contains appropriate SOA dumps in the ADR. The incident package name corresponds to the message ID specified in the watch name. The incident package dumps can be viewed later using standard ADR tools. This feature enables you to take corrective actions for the problem scenario.

  20. Click Finish.

    The watch you created is displayed at the bottom of the Settings for Module_Name page. In addition, three WLDF watches that are automatically shipped with Oracle WebLogic Server (Deadlock, StuckThread, and UncheckedException) are also displayed.

    Description of sca_createwatch3.gif follows
    Description of the illustration sca_createwatch3.gif

  21. In the Name column, click the specific watch name to display configuration details about the watch.

11.3 Manually Triggering and Executing Dumps

You can manually execute existing dumps with the WLST command executeDump and create incidents when one has not been automatically created.

To manually execute dumps:

  1. Specify the executeDump command to place dump contents in a file (for this example, soa.config is the dump executed).

    wls:/soainfra/serverConfig> executeDump(name='soa.config', appName='soa-infra')
    
    Start Dumping deployedCompositesCatalog from MDS
    URI:deployed-composites/deployed-composites.xml to: /myhome/fmwhome/user_
    projects/domains/mydomain/servers/myserver/adr/diag/ofm/mydomain/
    myserver/incident/incdir_9/deployedCompositesCatalog
    
    Finished dumping specified MDS metadata to : /myhome/fmwhome/user_
    projects/domains/mydomain/servers/myserver/adr/diag/ofm/mydomain/myserver/incid
    ent/incdir_9/deployedCompositesCatalog
    
    Start Dumping soaServiceEnginesConfigurations from MDS
    URI:soa/configuration/default to: /myhome/fmwhome/user_projects/
    domains/mydomain/servers/myserver/AdminServer/adr/diag/ofm/mydomain/
    myserver/incident/incdir_9/soaServiceEnginesConfigurations
    
    Finished dumping specified MDS metadata to : /myhome/fmwhome/user_projects/
    domains/mydomain/servers/myserver/AdminServer/adr/diag/ofm/mydomain/
    myserver/incident/incdir_9/soaServiceEnginesConfigurations
    

    This creates the following output:

  2. Specify the executeDump command to display dump contents to the screen.

    executeDump(name='soa.edn')
    
    Type:oracle.integration.platform.blocks.event.saq.SAQBusinessEventBus
    Configuration:null
    Status: running=true started=true
    ThreadCount:3
    RetryCount:3
    In Global: Tx:false
    Cluster Info:oracle.integration.platform.blocks.cluster.CoherenceCluster
    Interface1mpt@163bd717
    SharedEDN:false
    OOAO Queue Name:edn_ooao_queue
    Java Subscriber Name:edn java subscriber
    Subscription Info:
    No namespace subscription...
    QName subscriptions:
    =============================================================
    qname={http://schemas.oracle.com/events/edl/ActionOccur}ADEvent
    subscriptions=
    id=default/WSInMedPubBpelSubFileOut!1.0*soa_7a055d6a-8402-49c2-ac56-5f85cbf3d7f/
    BpelSub, consistencyLevel=ONE_AND_ONLY_ONE, filter=XPath Filter: starts-with(/
    be:business-event/be:content/ns0:ActionOccurrence/ns0:ParentEntityType/@value,
     'A'), runAsRoles=[$publisher]
    id=partition_1/WSInMedPubBpelSubFileOut!1.0*soa_80a169ab1-395a-4b87-9986-9fa2742a8bd3/
    BpelSub, consistencyLevel=ONE_AND_ONLY_ONE, filter=XPath Filter: starts-with(/
    be:business-event/be:content/ns0:ActionOccurrence/ns0:ParentEntityType/@value,
     'A'), runAsRoles=[$publisher]
    EventThreadContextInfo:
    EventTargets:
    Event:partition_1/WSInMedPubBpelSubFileOut!1.0*soa0a169ab1-395a-4b87-9986-9fa2742a9bd3/
    BpelSub:::oracle.fabric.BPELServiceEngine@163bd6b5
    Event:default/WSInMedPubBpelSubFileOut!1.0*soa7a055d6a-8402-49c2-ac56-5f85cbf3
    d7f/BpelSub:::oracle.fabric.BPELServiceEngine@163bd6b5
    EDN DB Log enabled:false
    

You can also manually create incidents when one has not been automatically created. For example, this is useful when you notice performance issues and want to create an incident to send to Oracle Support Services. The incident can include SOA dumps, according to the SOA message ID mapping.

This can be performed with the following WLST command:

createIncident(messageId="SOA-90000", appName="soa-infra")

This has the same effect as WLDF watch notification execution, in which the watch has the message ID of SOA-90000 and application name of soa-infra.

For more information about executeDump, see Chapter "Diagnostic Framework Custom WLST Commands" of Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

11.4 Viewing Incident Packages with ADR Tools

ADRCI is a command-line utility that enables you to investigate problems and package and upload first-failure diagnostic data to Oracle Support Services. ADRCI also enables you to view the names of dump files in the ADR, and to view the alert log with XML tags stripped, with and without content filtering.

ADRCI is installed in the following directory:

MW_HOME/wlserver_10.3/server/adr

For more information about ADRCI, see Chapter "ADRCI: ADR Command Interpreter" of Oracle Database Utilities.

For information about other tools, see Chapter "Managing Diagnostic Data" of Oracle Database Administrator's Guide

11.5 Querying Problems and Incidents

The Diagnostic Framework provides WLST commands that you can use to view information about problems and incidents, including the following:

For more information about these WLST commands, see Section "Understanding the Diagnostic Framework" of Oracle Fusion Middleware Administrator's Guide and Chapter "Diagnostic Framework Custom WLST Commands" of Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.