Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The AWS Injector module provides the ability to push Tag data to an Kinesis Streams and DynamoDB Database endpoints.  The settings configuration for this module are located under the Configure tab of the Ignition Gateway web UI. Image Removed Once in the AWS Injector Settings configuration section there are five tabs: General, Kinesis, DynamoDB, Sets, and Tag Agents.  Each of these tabs is described in detail in the following sections.

...

The first tab contains the general settings for the AWS Injector module.

Image RemovedImage Added

The general configurations options available on this tab are listed below:

...

  • Setting Name
    • This is a friendly name of the AWS Kinesis Stream used to easily identify it.  This must also be unique.
  • Enabled
    • Whether or not this stream is enabled to connect to the Kinesis endpoint
  • AWS Access Key
    • The AWS Access Key ID.
    • Example: AKIAIOSFODNN7EXAMPLE
  • Password/AWS Secret Key
    • The AWS Secret Access Key.
    • Example: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
  • AWS Session Tokens
    • Whether to use AWS session tokens
    • Role ARN
      • The AWS role ARN
    • Session Duration
      • The AWS session duration
    • Session Name
      • The AWS session name
  • Region
    • The AWS region.
    • Example: us-east-1
  • Set
    • The Set to associate this AWS Kinesis Stream connection with.
  • Stream Name
    • The name of the AWS Kinesis Stream.
  • Firehose Stream
    • Enables pushing data directly to Firehose
    Set
    • The Set to associate this AWS Kinesis Stream connection with.

Store & Forward

  • Store & Forward Enabled
    • Whether to enable Store & Forward capbilities capabilities for this stream
  • Store & Forward Type
    • The type of the Store & Forward mechanism
  • Message Capacity
    • The Maximum number of messages to store before dropping the oldest historical messages
  • Flush Period
    • The period of time to wait (in milliseconds) between sending when flushing messages

Advanced

  • Partition Key Count
    • The number of unique indexed partition keys
  • Partition Key
    • An optional partition key pattern that supports token substitution for the following message fields: ${group}, ${edgenode}, ${device}.  This should only be configured if explicitly defined partition keys are necessary when inserting into the Kinesis Stream.
  • Max Message Size
    • The maximum message size allowed to be pushed before messages will be broken up into smaller messages (in bytes).


Clicking on the "Create new Kinesis Stream Setting..." link will bring up the following form for adding a new AWS Kinesis Stream endpoint.

Image RemovedImage Added

DynamoDB Databases

The third tab is the list of AWS DynamoDB Database endpoints that the module should connect to to push Tag data.

Image RemovedImage Added

One or more AWS DynamoDB Database endpoints can be configured on this tab. The configuration options for an AWS DynamoDB Database connection are listed below.

...

  • Setting Name
    • This is a friendly name of the AWS Kinesis DynamoDB Stream used to easily identify it.  This must also be unique.
  • AWS Access Key
    • The AWS Access Key ID.
    • Example: AKIAIOSFODNN7EXAMPLE
  • Password/AWS Secret Key
    • The AWS Secret Access Key.
    • Example: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
  • Region
    • The AWS region.
    Table Name
  • Set
    • The name of the Set to associate this AWS DynamoDB Database tableconnection with.
    Set
  • Table Name
    • The Set to associate this name of the AWS DynamoDB Database connection withtable.

Store & Forward

  • Store & Forward Enabled
    • Whether to enable Store & Forward capbilities for this stream
  • Store & Forward Type
    • The type of the Store & Forward mechanism
  • Message Capacity
    • The Maximum number of messages to store before dropping the oldest historical messages
  • Flush Period
    • The period of time to wait (in milliseconds) between sending when flushing messages

...

Clicking on the "Create new DynamoDB Setting..." link will bring up the following form for adding a new AWS DynamoDB Database endpoint.

Image RemovedImage Added

Sets

The Sets tab contains a list of AWS Sets.  Each set represents a grouping of AWS endpoints.  When a set is referenced by a Tag Agent the Agent will push Tag data to all AWS endpoints contained within that Set. The Sets are disjoint, meaning that a single AWS Kinesis Stream or DynamoDB Database endpoint cannot be in more than one set.  Out of the box the AWS Injector module will have one "Default" set defined.Image Removed

Image Added

Additional Sets can be configured for situations where multiple Tag Agents will need to push to different AWS endpoints. The configuration options for Sets are listed below.

...

  • Name
    • This is the friendly name of the set used to easily identify it.
  • Description
    • This is a friendly description of the set.
  • Push Policy
    • This defines which endpoints to push to. If PUSH_TO_ALL is selected, every endpoint that is part of this set will receive all messages. If PUSH_TO_ANY is selected, only one of the endpoints that is part of this set will receive any given message. PUSH_TO_ANY is useful when adding endpoint configurations to increase the throughput of the Injector.


Clicking on the 'Create new AWS Set...' link will bring up the following form to add a new Set.

Image Added

Image RemovedTag Agents

Tag Agents are the workers within AWS Injector that monitor tag events, convert them to a JSON representation, and push them to one or more AWS endpoints. Out of the box the AWS Injector module will have one "default" Tag Agent defined.Image Removed

Image Added

Tag Agents are configured to point to a single folder.  All Tags within that folder will be monitored by the Tag Agent. 

...

  • Tag Provider Name
    • The name of the Tag provider containing the tags.
  • Tag Path
    • An optional folder path under the Tag provider where the root folder of the Tags can be found.
  • Tag Pacing Period
    • The buffer period, in milliseconds, that Tag events will be aggregated into a single payload before pushing.
  • Convert UDTs
    • Whether to convert UDT members to normal Tags before publishing.  If enabled the Tags representing the UDT member will retain their member path prefixed by the UDT Instance name.
    • Publish UDT Definitions
      • This can only be set if 'Convert UDTs' is false  
      • Whether or not to push the UDT Definitions in the the NBIRTH messages
  • Set
    • The Set of AWS endpoints that the Tag Agent will push to.
  • Auto-discover Tags
    • Whether newly added tags should be dynamically scanned and their values pushed.  This field is disabled by default.  It should remain disabled while manually editing tags and/or their configurations. It should only typically be enabled in systems where tags are created in real time.

...

As you can see, the Sparkplug settings can be used to either hard-code defined by setting these IDs in this configuration page, or leave them blank so that the Agent will scan and discover them based on the tag tree layout. 

Clicking on the 'Create new Tag Agent Settings..' link will bring up the following form to add a new Tag Agent.

Image AddedImage Removed