Configuring message transformations (dynamicChains)
dynamicChains contains templates of chains. The
Universal Messaging manager will pick a chain template that ends with the
UMTransport plug-in, and use that configuration. The manager also provides configuration from the channel which the chain can use with
@{varname} substitutions (see
Using dynamic replacement variables). The manager uses the
channelPattern property of the
UMTransport configuration to decide which chain template should be used for a given channel.
With either the
apama.eventMap or
apama.eventString host plug-ins, we recommend use of the
suppressLoopback configuration property to avoid messages which are sent to that channel being delivered internally as well as being sent to and received from
Universal Messaging. We also recommend setting the
description and
remoteAddress properties in order to improve logging and debugging. See
Host plug-ins and configuration for more information.
The following chain sends and receives events with the members of the event being set in the nEventProperties of the Universal Messaging events and an empty payload.
dynamicChains:
UMChain:
- apama.eventMap:
suppressLoopback: true
description: "@{um.rnames}"
remoteAddress: "@{um.rnames}"
- UMTransport:
setTypeFromTag: true
channelPattern: ".*"
The following options can be used with UMTransport:
Option | Description |
setTypeFromTag | If set to true, the Universal Messaging message tag is translated to the sag.type metadata field, if the Universal Messaging tag is present. If desired, the Mapper codec (see The Mapper codec connectivity plug-in) can be used to set a different value for metadata.sag.type when sending messages towards the Universal Messaging transport in order to use a string other than the Apama event type for the Universal Messaging tag. When receiving messages from the Universal Messaging transport, the Classifier codec (see The Classifier codec connectivity plug-in) can be used to set the Apama event type to be used if the incoming Universal Messaging messages do not specify an Apama event type in their "tag". For performance-critical applications where the event type is known or can be set in the chain, we recommend setting this option to false. Default value: true. |
channelPattern | Required. A regular expression that is used to select which chain is used for which channel. Only one chain definition may match any channel, except for the "fallback" definition with the channel pattern ".*", which will be used if no other patterns match. Default value: none. |