Skip to content
Data > Feed Handlers

Setting Up Feed Handlers

AMI is capable of connecting to a variety of external data feeds via the Relay using feed handlers. For a list of supplied feed handlers, see here.

To use a supported feed handler, please reach out to support@3forge.com to have the files assigned to your account.

Overview

Backed by Java classes, AMI feed handlers enable subscription to different external data feeds, e.g: Kafka. Feed handlers allow for low-latency streaming of data into AMI from several feeds for real-time data processing. AMI can subscribed to multiple feeds via feed handlers.

As with datasource adapters, feed handlers are provided as .jar files containing Java classes that handle the connection. However, feed handlers are configured via property files and not the GUI.

Each feed handler will have different unique properties, but the general property setup is outlined below.

Setup

The general steps for adding feed handlers to AMI is as follows:

  1. Download and add the feed handler to AMI
  2. Configure the feed handler's connection
  3. Configure the feed handler's commands (differs between each feed handler)

Adding a Feed Handler

  1. From the client portal, download the assigned zip folder or .jar files for the feed handler you need. Extract all the .jar files provided.

  2. Navigate to the root directory of your AMI installation and paste the .jar files in the amione/lib directory.

  3. You will then need to configure your AMI properties to use the feed handler.

Properties

In order to use feed handlers, you will need to configure a couple of properties in your local.properties file.

The following properties are required across each unique feed handler:

Required Properties

ami.relay.fh.active=$${ami.relay.fh.active},some_feed_handler
  • A comma-delimited list of the active named feed handlers, e.g:

    ami.relay.fh.active=$${ami.relay.fh.active},fh1,fh2

ami.relay.fh.<FH_NAME>.class=fully_qualified_classname_of_feed_handler
  • A named feed handler, e.g:

    ami.relay.fh.fh1.class=fh1_package.fh1_class

Note

$${ami.relay.fh.active} references the existing feed handler list. Do not remove it, and ensure that any additional feed handler aliases are added after in a comma-delimited list with no spaces.

For example, to set up a Kafka feed named "kafka1" in AMI, you would need the following configuration in local.properties:
ami.relay.fh.active=$${ami.relay.fh.active},kafka1
ami.relay.fh.kafka1.class=com.f1.ami.relay.fh.kafka.AmiKafkaFH

Each feed handler then needs additional configuration specific to the data feed (Kafka, AMPS, etc).

The full list of configurable properties for each individual supported feed handler is contained in their respective pages.

Supported Feed Handlers

Custom Feed Handlers

We provide the Java interface for writing your own feed handlers in the event that you have a custom data feed and/or are using a data feed that is not currently supported.

The instructions can be found here. Alternatively, reach out to us at support@3forge.com.