Redundant Event Stream
In a system setup which uses multiple streams to ensure data ingegrity for Alarms & Events by redundancy, the Redundant Event Stream object identifies individual Alarms & Events and sorts out doublets of the same message, which have reached the core through different streams.
To prevent data loss in the event of a loss of service, the Redundant Event Stream object is linked to multiple redundant instances of Event Stream or Script Event objects. If the event source for one of the Event Stream objects fails, the other stream provides backup ensuring that the Redundant Event Stream doesn’t miss any events. Events for the Redundant Event Stream can be historized like any other Event Stream or Script Event object.
Redundant Event Stream objects are created in the I/O Model and events can be visualized in the Event View display.
Quick Configuration
-
Redundant Event Streamobjects build upon multiple Event Stream objects which are linked to the same stream of events. To try out the functionality, it is therefore useful to have at least two independent Event Stream objects underneath different Connectors (corresponding to different Connector services) that are connected to the same event source (for instance, an OPC A&E server). -
To create a new
Redundant Event Streamobject, in the I/O Model right-click on the Core object and then select from the context menu. -
Give the object a unique name and enter a description if necessary. Select the Event Historization checkbox to ensure that all events are archived.
-
The Archive Selector property allows you to select the data store which the events are archived. Users can select the System Event (A&E) Data Store or All Top Level Event Stores (this means the data will be stored in any custom event stores that exist in the tree above the object AND the System Event (A&E) Data Store). Any other event data stores or Generic Event Buffer objects that have been configured in the Core Data Store Sets table property will also be available for selection here.
-
To connect Event Stream objects to the
Redundant Event StreamObject you have to create a reference to the event stream in the Redundant Event Stream object. Such a reference will be created when you drag & drop an Event Stream Object to theRedundant Event Streamobject in the I/O Model. Repeat for all Event Stream Objects which represent the same stream of events. -
To display the Redundant Event Stream right click on the
Redundant Event Streamobject and and select
| Information regarding the status of an existing Redundant Event Stream can be found in the Properties section of Object Properties panel, by expanding A&E Redundancy Information. |
Advanced Configuration
Each A&E message is only sent once through each channel. Thus, two messages coming through the same channel have to be two individual messages. If messages reach the core through different streams, the system has to investigate if they are copies of a message, which is already known, or if they are new messages.
Redundant Event Stream objects provide the means for a meticulous configuration to differentiate between individual messages and multiple copies of the same message.
Redundancy Investigation
The criteria for the Redundancy Investigation Strategy can be configured in the subsection of the same name, which can be found underneath Common section in the Object Properties Panel for the selected Redundant Event Stream object.
If selected, the entries for a specific criterion will be compared when testing for doublets. If all selected criteria have the same value for the investigated messages, these are regarded as doublets and only one of them will be treated as an individual A&E message. The more criteria are selected for investigation, the more precise the differentiation between individual messages and the doublets will be. Most of the criteria available for selection correspond to the columns in the Event View Display.
A&E Redundancy Buffer Settings
This compound allows to limit the redundancy investigation by time and number of messages. Messages which arrive within these limits will be investigated for redundancy; messages arriving outside these limits are regarded as individual messages.
Time Period |
The maximum number of minutes for which messages are buffered for comparison. If messages arrive more than this number of minutes apart, they are not investigated as potential doublets but treated as individual messages. |
Max Hashes |
The maximum number of message to be buffered for comparison. If the number of messages in the buffer has reached this limit, the oldest message will be discarded whenever a new one arrives. If the number of messages between the arrival of two similar messages exceeds this number, the new message can no longer be compared to the older message and is therefore treated as an individual message. |
Object Properties
The user-modifiable object name. This name overrides the name which has been supplied by the external system. It must be unique within the collection of objects of the parent object. This is the user-modifiable object description. This text overrides the description which has been supplied by the external system. Alternate label for objects to be used for easier identification in the displays. If enabled, this object will log detail operations to the disk log folder. This setting defines whether a certain Event Stream shall historize raw events. Select default archive of the master core or a custom set of data stores. A&E Routing Information. The flag mask which indicates the strategy for OPC classic-born alarm & event redundancy resolution. Investigate Timestamp: If this flag is checked the timestamp will be included in the redundancy investigation. Investigate Event Type: If this flag is checked the event type will be included in the redundancy investigation. Investigate Quality: If this flag is checked the quality will be included in the redundancy investigation. Investigate Severity: If this flag is checked the severity will be included in the redundancy investigation. Investigate Active Time: If this flag is checked the active time will be included in the redundancy investigation. Investigate Category: If this flag is checked the category will be included in the redundancy investigation. Investigate Condition: If this flag is checked the condition will be included in the redundancy investigation. Investigate Subcondition: If this flag is checked the subcondition will be included in the redundancy investigation. Investigate Change Mask: If this flag is checked the change mask will be included in the redundancy investigation. Investigate NewState: If this flag is checked the NewState will be included in the redundancy investigation. Investigate Message: If this flag is checked the message will be included in the redundancy investigation. Investigate Attributes: If this flag is checked the attributes will be included in the redundancy investigation. Investigate Cookie: If this flag is checked the source server cookie will be included in the redundancy investigation. File attachments stored in MongoDB file store.Common
Redundancy Investigation Strategy
The current information about event selection in the redundant event stream. Current number of events processed by the redundant event stream. Current number of events forwarded by the event stream, which equals the number of events which have been considered non-redundant. Current active timestamp for redundant event filtering. Current active reference name for redundant event filtering. Current active connector name for redundant event filtering. Current active datasource name for redundant event filtering. Current active stream name for redundant event filtering.A&E Redundancy Information
Adjustments of the working buffer size. The maximum time period to keep hashed events in memory. The absolute maximum of hashes to keep in memory.A&E Redundancy Buffer Settings
Configurable settings for auxiliary state management. Specifies how auxiliary state changes are handled. Inherit: Inherit the setting from the parent object. In case of no parent object, the "Persist" mode is used. Persist: All object auxiliary states are indicated and persisted to the archive. Volatile: Auxiliary state changes are volatile and not persisted. Inhibit: Inhibit all auxiliary state changes.Auxiliary State Management
Strategy
Compound to hold various structures to customize the object and to be read and written to by Lua-Script code or external interfaces. A generic string buffer to be used programmatically for custom purposes. This is an extensible set of named strings which can be used programmatically for custom purposes. A custom property name which can be used programmatically. The value of the custom property which can be read and written programmatically. This is an extensible set of named tables which can be used programmatically for custom purposes. A custom table name which can be used programmatically. Handles an entire table organized in columns and rows. The data can easily (cut, copy and paste) be exchanged with table-oriented data of other software products, e.g. MS Excel.Custom Options
Custom Properties
Custom Tables