10 Creating Alerts
This chapter describes how to create and use alerts in Oracle Business Activity Monitoring (BAM). It describes how to specify the events and conditions under which an alert fires, include messages with alerts, manage chained alerts, and use actions.
This chapter includes the following sections:
10.1 Understanding Alerts
An alert performs one or more actions when launched by an event and filtered by one or more conditions.
An event can be an amount of time, a specific time, a date and time, a repeating event between two dates, a change in a data object, output from a continuous query, or a manual event. A condition restricts the alert to an event occurring between two times or dates or to a specific day of the week. An action can send a notification, perform a data object operation, invoke a web service, call an external method, or launch other alerts.
Note:
If you do not set a time zone preference, time-based alerts are based on coordinated universal time (UTC). See Setting Language_ Time Zone_ and Accessibility Preferences for more information.
Each alert name in the left panel navigator has an icon indicating its status as described in Table 10-1.
Table 10-1 Alert Icons
Icon | Description |
---|---|
![]() |
Active indicates that the alert is active and fires in response to its configured event and conditions. Newly created alerts are active by default. |
![]() |
Inactive indicates that the alert is inactive and does not fire. You can reactivate the alert. See Activating and Deactivating an Alert. |
![]() |
Invalid indicates that an alert has become orphaned or broken due to an error. The alert might require correction. For example, an alert is invalid if it is based on a data object, KPI, or continuous query that has changed. Alerts displayed with this icon do not fire again until they are edited and corrected. |
![]() |
Expired means that the alert does not fire again. This icon is displayed for time-based alerts that fire only once, after the alert has fired. However, these alerts can be edited and reused, resetting the state to Active. |
Inactive and expired alerts behave differently. An alert can be deactivated only if it is running. Deactivation benefits users who do not want actions to be executed for some time interval. Alerts that are inactive, but still valid, can be activated again.
An expired alert no longer fires because its event or conditions will not occur again. However, to reuse an expired alert, you can edit it to make it valid and save it. The alert is reloaded and is ready to fire again.
10.2 Alert Prerequisites and Uses
Alert prerequisites are a set of tasks you must complete before you create an alert, to ensure its smooth functioning.
Before you can create an alert, you must do the following:
-
If the alert event is a change to a data field, add to your project the data object containing that data field. For more information about projects, see Planning and Creating Projects. For more information about data objects, see Working with Data Objects.
-
If the alert event is a continuous query, create the query. For more information about continuous queries, see Creating a Continuous Query.
-
If the alert action is to send a dashboard to users, create the dashboard. For more information about dashboards, see Creating Dashboards.
-
If the alert action is deleting data object rows, add that data object to your project. For more information about projects, see Planning and Creating Projects. For more information about data objects, see Working with Data Objects.
After you create alerts, you can use them in the following ways:
- In a query
-
You can configure an alert action for a continuous query. This alert action is specific to the query and does not appear in the left panel navigator under Alerts. As an alternative, you can configure an alert to watch a continuous query as its triggering event; see Select a CQL Query. For more information about continuous queries, see Creating a Continuous Query.
- In a KPI
-
You can configure alert actions for a key performance indicator (KPI). These alert actions are specific to the KPI and do not appear in the left panel navigator under Alerts. For more information about KPIs, see Creating KPIs.
- With a web service
-
You can configure a web service to trigger an alert. For more information, see Launching Alerts by Invoking Web Services.
- To trigger another alert
-
The action of one alert can be the event trigger of another. For more information, see Creating Dependent Alerts.
10.4 Activating and Deactivating an Alert
Oracle BAM allows you to activate and deactivate alerts, thus making alert management easier.
When you create an alert, it is active by default. If you want an alert to be temporarily inactive but you do not want to delete it, you can deactivate it.
Administrative users can change the activity status of their own alerts and alerts created by other admin and non-admin users.
10.4.1 To Change the Activity Status from the Navigator
-
Right-click the alert in the left panel navigator.
-
Select Activate or Deactivate from the pop-up menu.
On this menu, an active alert shows a blue check box for a grayed Activate option and a gray check box for a selectable Deactivate option. An inactive alert shows a gray check box for a selectable Activate option and a blue check box for a grayed Deactivate option.
10.4.2 To Change the Activity Status from the Alert Tab
-
In the left panel navigator, click the arrow to the left of Alerts.
All saved alerts in the current project are displayed in a list.
-
Click the alert name, or right-click the alert name and select the Edit menu item.
-
Check or uncheck the box to the left of the alert name in the upper left corner of the alert tab.
If this box is checked, the alert is active. If this box is not checked, the alert is inactive.
-
Click Save.
Activating an alert does not cause an alert to launch, it only enables it so that if the event occurs, the alert launches.
Note:
An alert fires only if its triggering event conditions are met from the point in time the alert is defined (or reenabled) and forward. An alert does not fire if its conditions were met before it was defined or while it was inactive.
10.5 Creating Dependent Alerts
You can create alerts that launch other alerts.
There is no limit to how many alerts you can chain in this way.
You can chain two alerts by creating:
-
A dependent alert that must be launched by another alert
-
An alert with an action to launch a dependent alert
To create a dependent alert:
10.7 Renaming an Alert
This section outlines the procedure to rename an alert.
Use the following procedure to change the Display Name of an alert.
The Display Name is case sensitive and may contain any characters except the forward slash (/
), which indicates a folder path. It may have up to 128 characters. It can be changed at any time.
To rename an alert:
When you edit the alert, the new Display Name is displayed on the tab. This name is also displayed when you view the alert in the Alert History list.
However, the internal Name remains unchanged. When you edit the alert, this name is displayed on the left in the header. The ManualRuleFile web service also references the internal name. See Launching Alerts by Invoking Web Services for more information.
10.8 Deleting an Alert
Administrative role users can delete their own alerts and alerts created by other admin and non-admin users.
10.9 Securing an Alert
An alert inherits security settings from the project in which it is created.
For more information about projects, see Planning and Creating Projects.
To change security settings for an alert:
-
In the left panel navigator, click the arrow to the left of Alerts.
All saved alerts in the current project are displayed in a list.
-
Right-click the alert and select Security Settings from the pop-up menu.
The security tab for the alert opens.
-
To add a role or group to whom you can explicitly grant or deny permissions, follow these steps:
-
Click the Add icon in the Grant Permissions or Deny Permissions table.
The Add Application Roles, Groups, and Users dialog opens.
See Managing Oracle BAM Users for information about how to add users to roles and groups.
-
Type a Name for the role or group you are adding.
-
Select from the drop-down List: Application Role or Group.
-
Click Search to populate the Available Members list.
-
To add a member to the Selected Members list, select the member and click the single right arrow.
-
To add all members to the Selected Members list, select the member and click the double right arrow.
-
To remove members from the Selected Members list, use the single and double left arrows.
-
When the Selected Members list is final, click OK.
The Add Application Roles, Groups, and Users dialog closes, and the Name you specified appears in the table.
-
-
To remove a role or group, select the table row and click the Remove icon.
-
To grant permissions, select Read, Write, Remove, or Security for the users, roles, and groups listed in the Grant Permissions table.
-
To deny permissions, select Read, Write, Remove, or Security for the users, roles, and groups listed in the Deny Permissions table.
-
Click Save.
10.10 Viewing Alert History from the Home Page
You can view a recent history of alert activity on the Alerts tab in the BAM Viewer (the Home page).
See Viewing Alert History for more information.
10.11 Launching Alerts by Invoking Web Services
You can use the ManualRuleFire web service to launch alerts triggered by the When this rule is launched event. For more information, refer to:
http://host:port/OracleBAMWS/WebServices/ManualRuleFire?WSDL
Using the ManualRuleFire Web Service further describes this web service.
You identify the alert to launch using a web service parameter of the following format:
projectname.alertname
Both of these names are internal names, not display names.
This is different from configuring an alert to launch a web service. For more information, see Run a web service.
For an example of both the Run a web service action and the ManualRuleFire web service, see Alert and Web Service Example.
10.12 Alert and Web Service Example
This example shows a Run a web service alert action that invokes the ManualRuleFire web service. This is not the most efficient way for one alert trigger another (see Creating Dependent Alerts). It is intended only to clarify how both the Run a web service action and the ManualRuleFire web service are configured.
For more information, see Run a web service and Using the ManualRuleFire Web Service.
To configure the ManualRuleFire web service in the Run a web service action:
10.13 Sending Alerts to External Email Accounts
BAM can send alerts to external email accounts if an email driver is configured in Oracle User Messaging Service using Oracle Enterprise Manager Fusion Middleware Control.
See Configuring Oracle User Messaging Service for more information.
This feature is available only for actions involving email: Send a dashboard link via email, Send a message via email, and Send a parameterized message.
10.14 Alert Events
Events launch the alert and trigger the action. Each alert contains only one event.
Oracle BAM provides the following events:
10.14.1 In a specific amount of time
When you select the event In a specific amount of time, you must select a time interval in seconds, minutes, or hours. You can select a query for the alert. This ensures that the action you specify when the alert is triggered only if the query yields results.
10.14.2 At a specific time today
When you select the event At a specific time today, you must select the time at which to launch the alert.
10.14.3 On a certain day at a specific time
When you select the event On a certain day at a specific time, you must select both the date and the time at which to launch the alert.
10.14.4 Every interval between two times
When you select the event Every interval between two times, you must configure the following settings.
-
select time interval
Set the number of seconds, minutes, or hours between each alert launch.
-
select time
Set the times of day between which to launch the alert.
10.14.5 Every date interval starting on certain date at a specific time
When you select the event Every date interval starting on a certain date at a specific time, you must configure the following settings.
-
select date interval
Set the alert to launch every Day, Week, Month, or Year.
-
select date
Set the date on which to launch the alert.
-
select time
Set the time of day at which to launch the alert.
10.14.6 Select a CQL Query
When you select the event Select a CQL Query, you must select a continuous query from the pop-up drop-down list. The alert fires when the query receives new data with values outside of a normal range.
As an alternative, you can define an alert action in the continuous query itself. This alert action is specific to the query and does not appear in the left panel navigator under Alerts.
For more information about continuous queries, see Creating a Continuous Query.
10.14.7 When a data field in a data object meets specified conditions
When you select the event When a data field in a data object meets specified conditions, you must configure the following settings.
-
this data field has a condition of x
In the Data Based Event Editor, select the data object to monitor. Then you can set the condition under which the alert should fire.
-
Row Filters — Create a filter on a data field in the data object to express a condition that, when met, launches the alert. All of the functionality available in query filters is provided. See Filtering Data for more information.
-
Group Filters — The Group Filter is similar to the Row Filter in that it provides all of the filtering functionality available in query filters. The special feature here is that it allows filters to be created on a field where an aggregation function, such as AVG or SUM, has been applied. See Filtering Data for more information about building filter expressions.
Note:
For aggregation functions with row-level operations, Oracle recommends that you use the Group By setting when you use a row filter. However, it is best to apply a Group filter instead. You cannot mix aggregation functions with row level operations without the Group By setting applied. -
Groups — Choose one or more data fields on which to create a grouping, adding further complexity to any filters created in the Row Filters or Group Filters tabs.
-
-
run as <user_name> (This option appears only if you, the user creating the alert, have an administrator role.)
Select the Oracle BAM user whom the alert runs as. You can select only one run-as user. The default run-as user is you, the logged-in Oracle BAM user who is creating the alert.
You can select a different run-as user if another user has greater permissions to access the data object being monitored. The run-as user can view the alert history only if that user has Read privileges on the alert and the project containing the alert. See Securing an Alert for more information.
Names preceded with a hash (#) are distribution lists and cannot be selected.
Only recipients with security permissions equal to or higher than the run-as user receive the alert notifications, honoring row-level security as implemented by the architect of the data object.
If there are changes in the data object rows that none of the alert recipients have permissions to access, no recipients are notified.
Note:
The event When a data field in a data object meets specified conditions responds only to row inserts and updates. It does not respond to row deletes.
Note:
Calculated fields are now supported within this alert action.
10.14.8 When this rule is launched
The event When this rule is launched creates an alert that is dependent on another alert to launch it. The launching alert uses the Launch a rule action to launch the dependent alert. Several alerts can be chained using When this rule is launched in a hierarchy. For more information, see Creating Dependent Alerts.
10.15 Alert Conditions
Conditions are optional settings for constraining the time period in which the alert is fired.
You can select any number and combination of conditions. Oracle BAM provides the following conditions:
10.16 Alert Actions
Actions are the results of the conditions and events of the alert expression having been met.
You can configure any number and combination of actions. Oracle BAM provides the following actions:
10.16.1 Send a dashboard link via email
Select a dashboard and select one or more recipients.
Recipients can be selected from BAM users or, if an email driver is configured in Oracle User Messaging Service using Oracle Enterprise Manager Fusion Middleware Control, from external email accounts. See Sending Alerts to External Email Accounts for more information.
To create a dashboard link and send it using email:
10.16.2 Send a message via email
Create an email message to send, optionally select a dashboard, and select one or more recipients.
Recipients can be selected from BAM users or, if an email driver is configured in Oracle User Messaging Service using Oracle Enterprise Manager Fusion Middleware Control, from external email accounts. See Sending Alerts to External Email Accounts for more information.
Messages can include variables that are set when the alert is launched, such as the time that an event occurred and the data that launched the event. To use data variables, the event must be based on data: Select a CQL Query or When a data field in a data object meets specified conditions.
To create an alert that includes a message:
-
Create the alert. See Creating an Alert.
-
Select the action Send a message via email.
-
Click either <create message> or <select user> in the alert expression.
The Message Editor opens.
-
Type comma-separated email addresses in the To text box, or click the Search icon to display the Identity Browser and select BAM users.
-
Type a subject in the Subject line.
-
Type the message in the Message Text box.
-
Optionally click the arrow to the right of Select Project to List Dashboards and select a project from the drop-down list.
Dashboards in the selected project are listed.
-
Select a dashboard from the list.
-
Optionally include special fields in the message.
Special fields are listed in the List drop-down list. The special fields listed change when dashboards are selected in the lower portion of the Message Editor.
To insert a special field into the message:
-
Select a special field from the list.
-
Click Insert into subject or Insert into text.
You can insert multiple values of the same type, for example, multiple links to different dashboards.
-
Target User inserts the names, BAM user IDs, or email addresses of the message recipients.
If you entered BAM users in the To text box, names are inserted for the users with names defined, otherwise the IDs are inserted. If you entered email addresses, these are inserted as is.
-
Date/Time Sent inserts the date and time the message is sent.
-
Send Dashboard Name inserts name of the selected dashboard.
-
Send Dashboard Owner inserts the name of the owner of the selected dashboard.
-
Send Dashboard Link inserts a link to the selected dashboard.
-
-
Click OK.
10.16.3 Delete rows from a data object
Select the data object, and specify when a row is removed from the data object.
To delete rows from a data object:
10.16.4 Insert values into a data object
This action maps event data object fields to action data object fields and transfers values from one to the other. The data object that receives the inserted values is called a write-back data object. Select the action data object, and specify the event output fields that have values to be added to columns in the action data object.
This action is presented only if the event is based on data: Select a CQL Query or When a data field in a data object meets specified conditions.
Figure 10-1 shows the Map Fields dialog with an example data insert operation.
To insert values into a data object:
10.16.5 Send a parameterized message
This action emails dashboards that require parameter inputs to Oracle BAM users. You configure the email message and the parameter values that are passed to the dashboard.
For information about creating prompts and parameters in dashboards, see Creating Parameters.
Create an email message to send, select a dashboard, select one or more recipients, and specify action and dashboard parameter values.
Recipients can be selected from BAM users or, if an email driver is configured in Oracle User Messaging Service using Oracle Enterprise Manager Fusion Middleware Control, from external email accounts. See Sending Alerts to External Email Accounts for more information.
This action is presented only if the event is based on data: Select a CQL Query or When a data field in a data object meets specified conditions.
Figure 10-2 and Figure 10-3 show the Message Editor with an example parameterized message.
Figure 10-2 Message Editor Displaying Action Parameter Values Tab

Description of "Figure 10-2 Message Editor Displaying Action Parameter Values Tab"
Figure 10-3 Message Editor Displaying Report Parameter Values Tab

Description of "Figure 10-3 Message Editor Displaying Report Parameter Values Tab"
To create an alert that includes a parameterized message:
-
Create the alert. See Creating an Alert.
-
Select the action Send a parameterized message.
-
Click either <create message> or <set parameters> in the alert expression.
The Message Editor opens.
-
Type a subject in the Subject line.
-
Type the message in the Message Text box.
-
Optionally click the arrow to the right of Select Project to List Dashboards and select a project from the drop-down list.
Dashboards in the selected project are listed.
-
Select a dashboard from the list.
-
Optionally include special fields in the message.
Special fields are listed in the List drop-down list. The special fields listed change when dashboards are selected in the middle portion of the Message Editor.
To insert a special field into the message:
-
Select a special field from the list.
-
Click Insert into subject or Insert into text.
You can insert multiple values of the same type, for example, multiple links to different dashboards.
-
Target User inserts the user names of the message recipients.
-
Date/Time Sent inserts the date and time the message is sent.
-
Send Dashboard Name inserts name of the selected dashboard.
-
Send Dashboard Owner inserts the name of the owner of the selected dashboard.
-
Send Dashboard Link inserts a link to the selected dashboard.
-
Send Parameterized Dashboard Link inserts a link to the selected dashboard that includes parameter values.
-
data field inserts the value of the specified field.
-
-
In the Action Parameter Values tab, populate the User text box in one of these ways:
-
Type comma-separated email addresses.
-
Click the Search icon to display the Identity Browser and select BAM users.
-
Click the arrow to the right of Select Data Object Field and select a data field with user name values.
-
-
In the Action Parameter Values tab, populate the Dashboard text box in one of these ways:
-
Click the arrow to the right of Select Data Object Field and select a data field with dashboard name values.
-
Click the arrow to the right of Select Project to List Dashboards and select a project from the drop-down list.
-
-
In the Report Parameter Values tab, click Add Parameter once for each parameter the dashboard requires.
A row is added to the parameters table for each click.
For special values use the underscore (_), for example, _ALL_, _BLANK_, and _NULL_.
-
In each row, type the parameter name in the Name field.
-
In each row, select the parameter type in the Type field: Text or Data Object Field.
-
For each parameter of type Text, type the parameter value in the Value field.
-
For each parameter of type Data Object Field, click the Value field and select the parameter value from the drop-down list of data fields.
-
Click OK.
Note:
The Send a parameterized message for every matching row in a data object action is no longer supported. However, you can achieve the same result by combining the When a data field in a data object meets specified conditions event with the Send a parameterized message action.
10.16.6 Launch a rule
The event When this rule is launched creates an alert that is dependent on another alert to launch it. The launching alert uses the Launch a rule action to launch the dependent alert. Several alerts can be chained using When this rule is launched in a hierarchy. For more information, see Creating Dependent Alerts.
10.16.7 Run a web service
Configure the web service that the alert calls when fired.
Configuring an alert to launch a web service, as this action does, is different from configuring a web service to launch an alert. For more information, see Launching Alerts by Invoking Web Services.
Figure 10-4 shows the Configure Web Service dialog with an example web service.
For an example of both the Run a web service action and the ManualRuleFire web service, see Alert and Web Service Example.
Note:
Oracle BAM cannot determine if the web service is hosted on a server which is behind a secure server. It is your responsibility to indicate whether the web service is behind an HTTP basic authentication-based server. You must enter valid credentials if they are required.
To accomplish one-way SSL, the alert's web service client must be able to look up the certificate presented to it in a trust store.
To configure the web service:
Note:
If the web service does not respond to the call, then there are no logs available pertaining to the non-response or failure.