Category Archives: BPM

Configure BPM engine to publish to BAM

By default the Oracle BPM engine (Business Process Management) is configured so it won’t publish events to BAM (Business Activity Management). So should you choose to use BAM and use these great dashboards, you have set the DisableActions property to false/empty. Here is how it works to configure BPM to BAM:

  • Log in to the Fusion Middleware Control – http://bpm-host:7001/em
  • Navigate through the Farm – WebLogic Domain – select the domain and then select the Server in which BPM is running (soa_server1 in a default install)
  • Use the WebLogic Server dropdown menu as shown in the first screenshot
  • Select the System Mbean browser in the menu
  • Expand the folder ans shown in the second screenshot: Application Defined MBeans - oracle.as.soainfra.config - BMNNConfig - bpmn
  • Find the DisableActions property and remove it’s value
  • Apply the changes

BPM Suite configure BAM Adapter

To have the BPM server push events to BAM – Business Activity Monitoring – we have to configure the BPM suite to use the BAM Adapter. The BAM Adapter is configured (like other SOA Suite and BPM Adapters) in the WebLogic Server Console.

Configure BAM Adapter

  • In the WLS Console, locate the Domain structure and select Deployments.
  • In the Deployments table that is shown, search and click the OracleBAMAdapter (you could filter on type Resource Adapter)
  • As shown in the first screenshot: Select the Configuration tab and within that the Outbound Connection Pools tab
  • Drill down on the oracle.bam.adapter.adc.soap.SOAPConnectionFactory to eis/bam/soap
  • In the properties tab: fill in the details of the connection to the BAM Server (depending on how you installed it). Remember to acknowledge the changes of each field using the enter key (leaving a field without using the enter key and changes will be lost)
  • Save
  • First time you alter the BAM Adapter you have to create a Deployment Plan. Select the Path to the deployment plan and Save
  • Since you need to update the Adapetr now, select it and chose Update
  • Choose the option Update this application in place with the new deployment plan changes and click Finish.

SOA Suite delete instances for specific composite

There are fine resources on how to purge SOA Suite instances. However there are case where you want to delete the instances for a specific composite deployed in the SOA Suite. An example could be after an extensive test or test load on a specific service implemented in a SCA composite.

Here is the PL/SQL we used to purge instances of the productservice composite in the test partition. It is based on the default packages that are bundled with the SOA Suite to purge instance data:

DECLARE
   l_min_creation_date   TIMESTAMP     := to_timestamp('2010-01-01','yyyy-mm-dd');
   l_max_creation_date   TIMESTAMP     := to_timestamp('2012-09-10 1600','yyyy-mm-dd hh24mi');
   l_batch_size          INTEGER       := 100;
   l_max_runtime         INTEGER       := 60;
   l_soa_partition_name  varchar2(100) := 'test';
   l_composite_name      varchar2(100) := 'productservice';
 
BEGIN
-- delete instances for specific composite
soa.delete_instances( min_creation_date => l_min_creation_date
                    , max_creation_date => l_max_creation_date
                    , batch_size => l_batch_size 
                    , max_runtime => l_max_runtime
                    --, retention_period =>
                    , purge_partitioned_component => FALSE
                    , composite_name => l_composite_name
                    --, composite_revision => 
                    , soa_partition_name => l_soa_partition_name
                    );
commit;
END;

You can use the instances tab to track the progress of the delete script:
Composite instance count

Oracle BPM enable BAM

BPMN processes created in the BPM Suite can be monitored by standardized dashboard in the BPM workspace. Besides that there a default views to export Oracle BPM metrics to a data warehouse. And there is another option: BAM – Business Activity Monitoring. BAM takes the monitoring of BPMN processes one step further. BAM allows you to create more advanced dashboards and even real-time alerts. BAM enables you to make decisions based on real-time information gathered from your running processes. With BPMN processes you can use the standard Business Indicators that the BPM Suite offers you and use them to with BAM without much extra effort. However you have to enable BAM in BPM processes.

  • In the BPM Project Navigator right click the BPM project
  • Select Project Preferences
  • In the Category tree, select Process Analytics Summary
  • Click the Data Targets tab
  • Check the Enable BAM checkbox
  • Select the JNDI name of the BAM Adapter labeled as eis/bam/soap
  • Click OK

When you run a process that has Oracle BAM enabled the BPMN Service Engine populates Oracle BAM database with information about the business indicators measured in that process. The BPMN Service Engine generates this information based on the Sampling Points preference you defined in your project.

Also read the blog post on how to configure your SOA server to know where your BAM server is running. This is also needed to use BAM for BPM metrics.