Skip to main content
Version: 8.3 Beta 🚧

Types of Handlers

This page details each type of handler and what they are used for in an event stream.

Kafka​

The Kafka handler allows you to send source event data from your event stream to a specified Kafka topic. This handler is configurable with the following properties.

Kafka Handler PropertyTypeDescription
ConnectorStringThe name of the Kafka connector to send event data to.
TopicStringThe name of the Kafka topic to send event data to.
PartitionStringThe partition to send event data to.
TimestampStringThe timestamp of the Kafka record.
KeyStringThe key of the Kafka record.
ValueStringThe value produced to send to the specified Kafka connector.
HeadersPyDictionaryAllows a user to specify metadata information about the produced record's message payload, as key value pairs.
Additional Producer PropertiesPyDictionaryAllows a user to specify any other producer properties you want to add, as key value pairs. See the official Kafka documentation for available producer configurations.

Kafka Handler

Database​

The database handler allows you to send source event data from your event stream to a specified SQL database. This handler is configurable with the following properties.

Database Handler PropertyTypeDescription
DatabaseStringThe database you want to send the data to. The dropdown menu will be populated with available database connections defined in the Gateway.
ModeEnumThe action you want performed on the data. Selections in the dropdown menu include:
  • INSERT
  • UPDATE
The INSERT action utilizes a standard SQL insert statement with the data provided in the Column Mapping table. The UPDATE action utilizes the Where Clause Configuration table to identify which row will be updated with new data.
Table NameStringThe table in the database you want to store data to. The dropdown menu will be populated with available tables found in your database connection(s). You can also manually enter a table name and use the Automatically Create Table property to create a new table.
Automatically Create TableBooleanWhether or not a new table with the required columns should be created using the entered table name. Default is enabled.
Store timestamp toBooleanWhether or not a timestamp should be recorded to the specified column. If enabled, the system will use the system clock to generate the timestamp. You can choose a column from the dropdown menu, or manually create a column by manually entering a column name.
Bypass Store and Forward SystemBooleanWhether or not the Store and Forward system should be used. Enabling this property will cause the database handler to ignore Store and Forward. Default is disabled.
Column MappingUser DefinedAllows a user to specify which SQL column(s) data should be mapped to using the column name, SQL column type, and value. This table will be used in conjunction with the Mode property's INSERT option.
Where Clause ConfigurationUser DefinedAllows a user to specify where in the SQL table data should be updated by providing the column name, logical operator, and value. This table will be used in conjunction with the Mode property's UPDATE option.

Database Handler

HTTP​

The HTTP handler sends POST and PUT requests to a specified URL. The HTTP handler is configurable with the following properties.

HTTP Handler PropertyTypeDescription
URLStringThe destination URL to sent the HTTP request to.
TypeEnumThe HTTP request type you are using. Options include:
  • POST
  • PUT
HeadersListThe headers you want to include as part of the HTTP request. Values will be entered in the table using key value pairs as strings, with the header type as the key.
BodyByteThe payload included as part of the HTTP request. This data will be encoded to byte format.
Connect TimeoutIntThe amount of time to wait before the HTTP request times out, in milliseconds. Default is 30,000.
Cookies EnabledBooleanWhether or not cookies should be enabled. A value of True will use cookies, while False will not. Default is True.

HTTP Handler

Gateway Event​

The Gateway Event handler sends events to a different event stream. Note that the receiving event stream must have an Event Listener source configured in order to receive this event. You can define the destination of your event with the following properties.

Gateway Event Handler PropertyTypeDescription
ProjectStringThe destination project containing the event stream that the event will be sent to. You can use the dropdown menu to select your project, or use an expression to define the destination project.
PathStringThe destination event stream that the event will be sent to. The dropdown menu will list available event streams defined within the specified project. You can also use an expression to define the path, allowing you to send events to different event streams.
PayloadPyDictionaryThe payload that is to be sent to the destination event stream. You can also use an expression to create a dynamic payload.
Remote Gateway NameStringThe name of the remote Gateway to send events to.

Gateway Event Handler

Gateway Message​

The Gateway Message handler mimics the sendMessage system function by sending a message to a targeted Gateway. The Gateway Message handler is configurable with the following properties.

Gateway Message PropertyTypeDescription
ProjectStringThe project you want to send the Gateway Message's payload to. You can use the dropdown menu to select your project, or use an expression to define the destination project.
Message HandlerStringThe name of the message handler in the Gateway Message you want to send.
PayloadPyDictionaryThe data that will be passed onto the message handler.
PropertiesPyDictionaryAllows you to specify other properties that are part of the system.util.sendMessage function, using key value pairs. Available parameters include:
  • scope
  • clientSessionID
  • user
  • hasRole
  • hostName
  • remoteServers
See the sendMessage page for more information on each parameter.

Gateway Message Handler

Logger​

The logger handler logs a message to the logging system when events arrive. This handler is configurable with the following properties.

Logger Handler PropertyTypeDescription
NameStringThe name of your logger. You can use a simple string, or use an expression to name your logger.
Log LevelEnumThe log level used by your logger handler. Available options include:
  • TRACE
  • DEBUG
  • INFO
  • WARN
  • ERROR
MessagesStringThe message you want logged with the logging system. You can input a simple string, or use an expression to define your message.

Logger Handler

Script​

The script handler allows users to customize how they want to handle incoming events by executing the defined script when events arrive. The payload output from this script will be a PyObject type.

Script Handler

Tag​

The tag handler takes data from the event stream's source and writes the data to a specified tag. The tag handler is configurable with the following properties.

Tag Handler PropertyTypeDescription
Tag PathStringThe tag path to use when determining which tag to write to. You can use an expression to specify a dynamic tag path based on the event payload.
ValueStringThe value you want to write to the tag from the payload of the source event object. You can use an expression to break down the payload into individual data or metadata. See the Source Data and Metadata page for more information.
QualityStringThe quality to write to the tag as a string. You can use an expression to write a dynamic quality.
TimestampStringThe timestamp to write to the tag. You can write a dynamic timestamp using an expression.