Scheduling the RaiseECEvent job

The RaiseECEvent job raises an event for each of the business events in the BUSEVENT database table that have a status of CHECKED = 0. Registered event listeners are notified when events are raised. After an event is raised, the value of the CHECKED column is updated to -10. By default, this scheduled job runs every 5 minutes.

Procedure

  1. Open the Administration Console and select Site on the Administration Console Site/Store Selection page.
  2. From the Configuration menu, click Scheduler. A list of jobs that are scheduled to run on your store is displayed.
  3. From the list of jobs, select RaiseECEvent.
  4. Update the Schedule interval field to reflect your preferred interval.
    By default this value is set to 300 seconds so that the job runs every 5 minutes.
  5. Click OK.

Results

Your job is listed on the Scheduler Status Display page and runs at the specified start time.

What to do next

The EventProcessor scheduled job manages any further processing of business events with a value of -10:
  • Sends analytics events to an external analytics system and updates the value of the CHECKED column to -20.
  • Updates the value of the CHECKED column to -20 for non-analytics events.
To determine whether the EventProcessor is sending analytics events to an external analytics system, examine the Analytics Event Configuration in the Updating the WebSphere Commerce configuration file file. If the enable parameter is set to false, or if no stores are enabled, the analytics component is not used.
<component compClassName="com.ibm.commerce.bi.events.AnalyticsComponentConfiguration" 
enable="true" 
name="Analytics Event Configuration"> 
<property display="false"> 
<supportedEvents inProcessState="-15" 
mapper="mapCommonEvents.xml" 
maxBatchSize="200" 
maxProcessTime="86400" 
processState="-10" 
purgeState="-20"> 
... 
<stores> 
<store enabled="false" storeId="-1"> 
<configuration cmClientID="" 
password="" 
serviceURL="https://wscreceiver.coremetrics.com/Receiver/sendEventData" 
sslKeyPassphrase="WebAS" 
sslKeyStore="/usr/WebSphere/AppServer/profiles/demo/etc/DummyServerKeyFile.jks" 
sslTrustPassphrase="WebAS" 
sslTrustStore="/usr/WebSphere/AppServer/profiles/demo/etc/DummyServerTrustFile.jks" 
transmitClassName="com.ibm.commerce.bi.events.transmit.CMWebServiceTransmitter" 
transmitEnabled="false" 
username="" /> 
</store> 
</stores> 
</property> 
</component> 

The CleanECEvent scheduled job deletes business events with a value of -20 in the CHECKED column from the BUSEVENT database table.

WebSphere Commerce Version 7.0.0.5 or later1The scheduler jobs that are used for the ECEvent framework process ECEvents more efficiently. These scheduler jobs can update and delete rows in the BUSEVENT database table by using multiple transactions. By using multiple transactions, these commands can update and delete millions of records over time without encountering transaction timeouts or database locks. Previously, the default configuration for the Business Event framework causes the rows in the BUSEVENT table to grow unbounded. Eventually, the site encountered high memory utilization or database locking problems when the framework commands attempted to operate on many rows.

1 The improved functionality is included in the interim fix for APAR JR42537. This interim fix allows for the processing of more than 5000 rows at a time. If the Analytics Event Configuration component is disabled, or the stores are disabled, up to 500, 000 business events in the process state (-10) are deleted from the BUSEVENT table. These events are deleted in batches of 5000 events.