Previous Page | Next Page

Administering SAS BI Dashboard

Configuring Alert Latency with Event Generation Framework


Overview of Event Generation Framework

When a SAS BI Dashboard user or modeler sets up an alert, Event Generation Framework regularly polls BI Dashboard indicators, determines whether an event qualifies for an alert, and generates an alert for the user. An alert notification is generated when an indicator meets the criteria configured for the alert. Alerts are generated via e-mail, or they are posted as an event to the Alerts portlet.

Some organizations might receive an alert once a quarter or once a month. Organizations that require operational data can receive alerts as frequently as once a minute or more often.

For information about how to configure SAS BI Dashboard indicators, ranges, and threshold for alerts, see the SAS BI Dashboard 4.3 User's Guide. Also, for information about how to select the frequency and mode of output for alert notifications, see the SAS BI Dashboard 4.3 User's Guide.

The following figure shows how the Event Generation Framework interacts with the SAS BI Dashboard indicators to poll for an event, trigger the event, and notify users through an alert notification service.

Event Generation Framework

[Event Generation Framework]


Customizing Time Intervals for Alert Latency

Constant polling can impact the efficiency of SAS BI Dashboard. In order to minimize the impact of constant polling on performance of SAS BI Dashboard, you can customize and set parameters for alert latency. Alert latency is the time lag between when a data change occurs that triggers an alert and the time a user receives that alert.

To ensure optimum efficiency with alert latency, you can customize the time intervals for configuration data files in metadata. These configuration data files include EventSourceCandidateRefHandler and the EventCandidateRequestHandler. The EventSourceCandidateRefHandler is responsible for polling SAS BI Dashboard for a list of indicators that need to be queried. The EventCandidateRequestHandler retrieves a group of indicators in the list each time, and analyzes each indicator to determine whether an event should be generated.

The following table shows the location of the files and the parameters that can be customized in each of these files.

Parameters for Event Generation
Parameter Path File
heartbeatinterval SAS Folders/System/Applications/SAS BI Dashboard/BI Dashboard 4.3/BI Dashboard 4.3 - Event Generator/CandidateRefHandlerConfigs biDashboardIndicatorHeartbeat.crh
throttlepause SAS Folders/System/Applications/SAS BI Dashboard/BI Dashboard 4.3/BI Dashboard 4.3 - Event Generator/CandidateRequestHandlerConfigs BIDashboardIndicatorRequestor.crh


Default Values for Alert Latency

Alert latency is accomplished by two parameters:


Default Value for heartbeatInterval Parameter in SAS BI Dashboard 4.3

The heartbeatinterval parameter determines how often the EventSourceCandidateRefHandler polls for the list. In SAS BI Dashboard 4.3, the heartbeatinterval parameter determines how often the getCandidateIndicatorList is called upon. The default value for the heartbeatinterval parameter is 180000 milliseconds or 3 minutes.

Here is an example of the default value for the heartbeatinterval parameter in the biDashboardIndicatorHeartbeat.crh file for SAS BI Dashboard 4.3:

<?xml version="1.0" encoding="UTF-8"?>
EventCandidateRefHandlerConfig classname="com.sas.bi.dashboard.egfhandlers.
BidEventCandidateRefHandler"
     endpointSoftwareComponentName="BI Dashboard 4.3"
     heartbeatInterval="180000"
     id="biDashboardIndicatorHeartbeat"
serviceEndpointUrl="/services/AlertService/getCandidateIndicatorList"


Default Value for heartbeatInterval Parameter in SAS BI Dashboard 4.2

In SAS BI Dashboard 4.2, the heartbeatinterval parameter determines how often the getCandidateIndicatorList is called upon. The default value for the heartbeatinterval parameter is 30000 milliseconds or 30 seconds.

Here is an example of the default value for the heartbeatinterval parameter in the biDashboardIndicatorHeartbeat.crh file for SAS BI Dashboard 4.2:

<?xml version="1.0" encoding="UTF-8"?>
EventCandidateRefHandlerConfig classname="com.sas.bi.dashboard.egfhandlers.
BidEventCandidateRefHandler"
     endpointSoftwareComponentName="BI Dashboard 4.2"
     heartbeatInterval="30000"
     id="biDashboardIndicatorHeartbeat"
serviceEndpointUrl="/services/CandidateIndicatorListService"


Default Value for throttlepause Parameter in SAS BI Dashboard 4.3 and 4.2

The EventCandidateRequestHandler is responsible for requesting a small number of indicators at a time. The throttlepause parameter determines how often the EventCandidateRequestHandler requests the small number of indicators. After a request is completed, the system pauses for the number of milliseconds specified by the throttlepause parameter before issuing the next request. The EventSourceCandidateRefHandler puts less strain on the SAS BI Dashboard. Therefore, this call can be made more frequently with less performance impact. The throttlepause parameter is set to a default value of 60000 milliseconds.

Here is an example of the default value for the throttlepause parameter in the BIDashboardIndicatorRequestor.crh file for SAS BI Dashboard 4.3:

<?xml version="1.0" encoding="UTF-8"?>
<EventCandidateRequestHandlerConfig classname="com.sas.bi.dashboard.egfhandlers.
IndicatorRequestHandler"
     defaultEventCandidateType="sas.bid.indicator"
     endpointSoftwareComponentName="BI Dashboard 4.3"
      id="BIDashboardIndicatorRequestor"
      requestorType="sas.bid.indicator"
      serviceEndpointUrl="/services/AlertService/getAlertIndicators"
      throttlePause="60000">

Here is an example of the default value for the throttlepause parameter in the BIDashboardIndicatorRequestor.crh file for SAS BI Dashboard 4.2:

<?xml version="1.0" encoding="UTF-8"?>
<EventCandidateRequestHandlerConfig classname="com.sas.bi.dashboard.egfhandlers.
IndicatorRequestHandler"
     defaultEventCandidateType="sas.bid.indicator"
     endpointSoftwareComponentName="BI Dashboard 4.2"
      id="BIDashboardIndicatorRequestor"
      requestorType="sas.bid.indicator"
      serviceEndpointUrl="/services/IndicatorService"
      throttlePause="60000">


Modify Default Values for heartbeatInterval and throttlepause Parameters

Depending on your business requirements, you can modify the values for heartbeatInterval or the throttlepause parameter. Some businesses might choose to have an aggressive value of 30 seconds or specify a value equal to a few minutes. Other businesses might choose a higher value equal to several hours (for example, three hours or six hours). The values are always specified in milliseconds.


Logging Output for Event Generation

Message logging is accomplished with a logging context. A logging context is usually the fully qualified class name of the class where the logging message originated. Logging contexts are created or edited in the Logging Service Configuration window. Every logging context can have outputs associated with it. As a result, different log messages might go to different locations.

By default, all event generation log messages go to both the application server console and the event generation log file. In the Logging Service Configuration window, the com.sas.bi.eventgen logging context is specific to event generation. The SASBIDashboardEventGen4.3 log file is stored in the SAS-configuration-directory \Lev1\Web\Logs directory.

Previous Page | Next Page | Top of Page