This chapter describes how to monitor and manage Oracle Business Activity Monitoring (Oracle BAM) to keep the system running optimally.
This chapter includes the following sections:
You monitor continuous queries and viewsets on the Administrator page in BAM Composer.
You monitor and manage several aspects of Oracle BAM using Oracle Enterprise Manager Fusion Middleware Control, including MBean properties, performance metrics, log files, web services, and the Oracle User Messaging Service.
You enable the BAM Diagnostic Framework by setting three MBean properties in Fusion Middleware Control. To view the diagnostic information, you use the diagnostic data objects as you would any BAM data objects.
Use the Continuous Query Monitoring page to monitor all continuous queries across different projects in a BAM server instance. See Creating Business Queries for more information about continuous queries.
To monitor continuous queries:
A master viewset holds the query results in a data snapshot and the changes since the last snapshot for business views in the same project that use the same query and row security filters.
The first view opened in a dashboard for a given query creates the master viewset. Opening other views that use the same query creates slave viewsets.
Viewsets minimize time-consuming query reexecution and ensure that views are incrementally updated using a push-based mechanism.
You should monitor the number of currently open master viewsets and the number of slave viewsets sharing each master. This can help you determine the current load on the Oracle BAM system.
To monitor viewsets:
You can view the current state of the Oracle BAM server and its services at this URL:
http://host:port/oracle/bam/server
For example:
http://www.example.com:7001/oracle/bam/server
The default Oracle BAM server port is 7001. This may be different from the Oracle WebLogic Server administration server port.
The Description table displays the following information:
Server Name — The name of the Oracle WebLogic Server managed server dedicated to Oracle BAM, for example bam_server1
.
Server State — The current state of the server, such as Running or Stopped.
Server Version — The release version of the BAM server.
Build Number — The build number of the BAM server.
Build Label — The build label, which is the name of the deployment corresponding to the Oracle BAM application on the Oracle WebLogic Server managed server.
Build Date — The build date of the BAM server.
Schema Version — The schema version of the BAM server. The schema controls the structure of BAM data objects.
The Service Status table displays the states, such as Running or Stopped, of the Persistence, Report Cache, Alerts Engine, and Enterprise Message services.
Clicking the Persistence link displays the number of Inserts, Updates, and Deletes and the number of sent and received notifications for those operations. Click the browser Back button to return to the Description and Service Status tables.
Use Fusion Middleware Control to configure MBean properties for the Oracle BAM server.
To set BAM MBean properties:
The following BAM MBean properties control the BAM diagnostic framework:
DiagnosticEnabled — Enables the diagnostic framework if set to true
. The default is false
.
DiagnosticLevel — Sets the diagnostic logging level to INFO
or DEBUG
. The DEBUG
level gives granular diagnostic logs. The default is INFO
.
DiagnosticComponents — Specifies the BAM components for which diagnostic messages are logged. Specify a comma-separated list of any of the following components:
ADF
— The Application Development Framework, which provides lower-level components upon which Oracle BAM is based.
DC
— Data Control, which manages how data flows into data objects and queries.
RC
— The Report Cache, which receives and caches query results, then pushes the results to dashboards and the alert service.
CQS
— The Continuous Query Service, which delivers continuous query results.
ALERTS_ENGINE
— The Alert Service, which compares query results to alert events and conditions and executes the corresponding alert actions and notifications.
COMPOSER
— BAM Composer, the browser-based BAM interface.
COMMON_QUERY
— The Common Query Service, which delivers non-continuous query results.
By default, all components are included.
To set these properties, see Configuring BAM Server MBean Properties.
All diagnostic messages are saved to BASE_METRICS, a simple data object. Granular details pertaining to the Report Cache, the Alert Service, and the Continuous Query Service are persisted to the module-specific derived data objects RC_METRICS, ALERTS_METRICS, and CQS_METRICS. These data objects are created when the diagnostic framework is enabled.
You can use these diagnostic data objects in the same way you use other data objects. For example, you can create queries, views, alerts, and dashboards to monitor the diagnostic data.
The performance of Oracle BAM is reflected in metrics and statistics. There are Performance Summary pages with appropriate metrics for Oracle BAM Server.
To monitor BAM performance:
Descriptions of each metric are available in the Oracle Enterprise Manager Oracle Fusion Middleware Metric Reference Manual.
If Oracle BAM is running more slowly than expected, you can tune it in these ways:
If throughput of data into a data object from an Enterprise Message Source or other source is slow, create an index column for the primary key column. See Adding Index Columns for more information.
If Oracle BAM is running slowly and out-of-memory exceptions occur, increase the heap size to 2 GB. Use the following command with the -Xms2048m
and -Xmx2048m
arguments:
setenv USER_MEM_ARGS "-Xms2048m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=768m"
For more tips on how to tune Oracle BAM performance, see "Tuning Oracle Business Activity Monitoring" in Tuning Performance.
Use Fusion Middleware Control to monitor Oracle BAM logs.
To monitor BAM logs:
Oracle BAM provides DataObjectDefinition, DataObjectOperationsByName, DataObjectOperationsByID, DataObjectOperations10131, and ManualRuleFire web services. For more information, see Using Oracle BAM Web Services.
Use Fusion Middleware Control to monitor Oracle BAM web services.
To monitor BAM web services:
You can see the following statistics in the Java EE Web Services table: Invocation Count, Response Count, Response Error Count, Average Execution Time (ms), and Average Response Time (ms).
Oracle BAM high availability is based on Oracle WebLogic Server high availability. See "Configuring Oracle BAM for High Availability" in High Availability Guide for more information.
Note:
Make sure that times on all Oracle BAM Server instances in a cluster are synchronized to UTC. Time differences can result in event losses for continuous queries.
Oracle BAM Server instances can be started and stopped using Fusion Middleware Control.
Restarting is required for any configuration changes made in Fusion Middleware Control properties pages for Oracle BAM or its configuration files.
To start or stop Oracle BAM servers in Fusion Middleware Control:
Oracle User Messaging Service (UMS) must be configured properly in Fusion Middleware Control to send email notifications for alerts.
The UMS email driver monitors the outbound email account configured for Oracle BAM Server for any delivery failures, including rejected emails. Email delivery failure notifications are asynchronous: there is no definite time within which email rejection notification is received.
To make UMS work with SSL, remove javax.net.ssl.trustStore
from the JVM argument in the setDomainEnv.sh
file for your Oracle WebLogic Server domain.
To configure UMS:
Log in to the Fusion Middleware Control console.
Make sure that the BAM Server is running:
In the Target Navigation pane, expand the Business Activity Monitoring node.
Right-click the BamServer node under the Business Activity Monitoring node.
For example, the BamServer node might be BamServer (bam_server1)
.
Select Control > Start Up from the menu.
If the BAM Server is not running, it is started. If it is already running, an Application already running
error message appears.
In the Target Navigation pane, expand the User Messaging Service node.
Right-click the usermessagingdriver-email (bam_server1) node.
Select the Email Driver Properties menu item.
The Email Driver Properties page appears.
Set or verify the following properties. Email addresses and mail server names are example values.
Use Default Sender Address — EMAIL:example@example.com
E-mail Receiving Protocol — IMAP
Connection Retry Limit — –1
Message Cleanup Frequency — 600
Auto Delete — unchecked
Debug Mode — unchecked
Message Retrieval Frequency — 30
Message Folder — INBOX
Outgoing Mail Server — mailserver.example.com
Outgoing Mail Server Port — 465
Outgoing Mail Server Security — SSL
Default From Address — example@example.com
Outgoing Username — example@example.com
Outgoing Password — select clear text password from the drop-down]
Incoming Mail Server — mailserver.example.com
Incoming Mail Server Port — 993
Enable SSL — checked
Incoming Mail IDs — example@example.com
Incoming User IDs — example@example.com
Incoming Passwords — select clear text password from the drop-down]
Message Processing Chunk S — 100
Disable Plain-Text Authentic — unchecked
Click Apply to save the property changes.
In the Target Navigation pane, expand the Business Activity Monitoring node.
Double-click the BamServer node under the Business Activity Monitoring node.
For example, the BamServer node might be BamServer (bam_server1)
.
The BAM Properties page appears, displaying BAM System Settings and Alert Engine properties.
Type the default sender address as the value for the Sender Email ID property. For example, type example@example.com
.
Click Apply to save the change.