Elasticsearch Indexer Processing Plugin Parameters and Triggers
Elasticsearch Indexer processes core and derived events to trigger the publication of STEP data to the Elasticsearch search engine for display on the faceted Search Screen in Web UI.
Important: To access and use faceted search powered by Elasticsearch, the ‘elasticsearch-integration’ add-on component must be activated on your system. To access and use the faceted Search screen, the 'ui-search' add-on component must be activated on your system. Contact your Stibo Systems representative for more information.
Deleted objects (objects in the recycle bin) are ignored during processing.
The Parameters and Event Triggers sections below contain important information on settings that should be considered when creating an event processor using this processing plugin.
Prerequisites
This section of documentation describes configuration steps for this specific processor, but that is only one part of configuring an event processor. For the full set of instructions on configuring an event processor, refer to the Event Processors documentation here.
The Elasticsearch Indexer requires an Elasticsearch configuration created via a wizard (not manually). For details, refer to the Creating an Elasticsearch Configuration topic in the Web User Interfaces documentation here.
Parameters
Each of the relevant parameters for the Event Processor Wizard 'Configure Processing Plugin' step are described below. Any additional wizard parameters with importance for this plugin are also included in this topic.
While the event processor is created automatically by clicking the Finish button on the Elasticsearch Configuration wizard, the following parameters can be edited directly on the event processor.
- On the 'Configure Event Processor' step, for the User Running Event Processor Plugin parameter, recommended practice is to create a user specifically for this event processor with adequate privileges to access the data that will be published.
- For the Select Processor parameter, choose the Elasticsearch Indexer processing plugin to display the expected parameters on the 'Configure Processing Plugin' step.
- Click the Next button twice to display the wizard step 'Schedule Event Processor' and schedule as required.
Other changes to an existing Elasticsearch event processor must be made from the Elasticsearch configuration, as defined in the Maintaining an Elasticsearch Configuration topic here.
Event Triggers
Event Triggering Definitions are the same in Event Processors as they are in an OIEP. For details about the triggers, refer to the OIEP - Event-Based - Event Triggering Definitions Tab in the Data Exchange documentation here.
Basic event triggers are set using the Elasticsearch Configuration wizard. Set additional triggers based on your data model and as identified by the numbered items 1-3 in the image above.
- Triggering Object Types - add object type(s) for which instances contain data to be published to Elasticsearch. Additionally, include business rules and/or derived events as necessary to provide inherited or referenced data, as follows:
Triggering for Inherited Data: When triggering on specific object types, such as 'Product' (item 1), data inherited to the Product object could be changed on the parent. To handle this case, the Product object parents (item 2) are triggered and then processed via a business condition in the Event Filter parameter and a business action in the Generate Event parameter. The condition always returns 'False' since you do not want the parent object types to be published. The action generates a derived event to recursively republish only Product objects for the parent object types that triggered the event processor.
Triggering for Referenced Data: When triggering on specific object types, such as 'Product' (item 2), you can republish the Product object when data changes on an object referencing the Product. To handle this case, the Product object referenced image (item 3) is triggered and then processed via a business condition in the Event Filter parameter and a business action in the Generate Event parameter. The condition always returns 'False' since you do not want the referenced object types to be published. The action generates a derived event to evaluate the incoming references from products array, and if the source of a reference is a Product, creates an event for it. Use this only when the Elasticsearch configuration includes data from referenced objects, for example, when those objects change, you want to republish the 'root node' to publish the data to Elasticsearch.
For similar use cases and samples of the JavaScript business rules, refer to the Event-Based OIEP Examples topic within the Data Exchange documentation here.
-
Triggering Attributes - add all attributes (item 4) that should be monitored.
-
Reference Type Triggers - add reference types (item 5) that should be monitored.
-
Triggering Data Container Types - data containers (item 6) are not allowed with Elasticsearch. Sufficiency score data container information is automatically included for publication and is not required to be defined as an event trigger.
-
Triggering Workspace - set the workspace trigger via the Elasticsearch Configuration object, as defined in the Creating an Elasticsearch Configuration topic here.
The presence of a Triggering Workspace flipper indicates that the event processor was configured prior to release 11.0 if either the 'Main' or the 'Main and Approved' option was previously selected. Although changing the selection to the default 'Approved' radio button removes the flipper from the event processor, the setting can be observed on the Elasticsearch Configuration object tab and can also be modified as defined in the Maintaining an Elasticsearch Configuration topic here.
Note: To activate a change to the Triggering Workspace parameter, you must invoke the event processor with at least one event on the queue.
Although changing the selection to the default 'Approved' radio button removes the flipper from the event processor, the setting can be observed from the Event Processor Wizard on the Configure Processing Plugin step, as defined, and further explained in the Parameters section above.
Next, publish data to the Event Processor running the Elasticsearch Indexer as defined in the Elasticsearch Publishing topic here.