YAML configuration file for the correlator
The following sample shows the format of a YAML configuration file for the correlator.
correlator:
javaApplicationSupport: false
pythonSupport: true
randomSeed: number
initialization:
list: [ ... ]
persistence:
enabled: false
snapshotIntervalMillis: number
adjustSnapshot: true
storeLocation: path
storeName: string
clear: false
runtime: interpreted
runtimeCacheDir: path
licenseFile: path
jmsConfigDir: path
distMemStoreConfigDir: path
inputLogFile: path
externalClock: false
timerFrequency: 10
truncateLogFile: false
disableOptimizations: false
includeDatabaseInInputLog: true
statusLogIntervalSecs: 5.0
inputQueueSize: 20000
logFile: path
server:
pidFile: path
port: 15903
name: string
bindAddress: [...]
permittedRootURIs: [...]
allowClient: [...]
maxOutstandingSecs: 10.0
maxOutstandingKb: 10240
disconnectSlowConsumers: false
jvmOptions: [...]
eplLogging:
.root:
level: loglevel
file: path
string:
level: loglevel
file: path
correlatorLogging:
string:
level: loglevel
environment:
string: string
engineConnect:
- sourceHost: string
sourcePort: integer
channels:
- string
mode: string
disconnectIfSlow: boolean
includes: [...]
# For configuring EPL plug-ins:
eplPlugins: [...]
# For configuring connectivity plug-ins:
connectivityPlugins: [...]
startChains: [...]
dynamicChainManagers: [...]
dynamicChains: [...]
For paths, we recommend using replacements like
${PARENT_DIR} or
${APAMA_WORK} to make the configuration files portable. See also the list of predefined properties in
Using properties files.
[...] denotes that this can be a list.
You can use multi-line and single-line syntax for maps (for example, in the eplLogging case).
Many of the elements in the above sample configuration file correspond to command-line options of the
correlator tool and have the same syntax and options. See the tables below, and see the descriptions of these command-line options in
Starting the correlator for detailed information.
Note: If an element in a YAML configuration file is defined more than once, the first definition that is loaded by the correlator takes precedence over all definitions that are loaded later. An INFO message is then logged for all later definitions that are being ignored. Any corresponding options that are specified directly on the command line, however, take precedence over any other later definitions.
The following table lists the elements that can be specified in the correlator section of the YAML configuration file (see the separate table below for the correlator/persistence section).
Note: When developing using
Software AG Designer, add any elements you need to set to the
config/CorrelatorConfig.yaml file. See also the description of the
Configuration option in
Correlator arguments.
This element | corresponds to this command-line option |
javaApplicationSupport | -j | --java |
pythonSupport | --python |
randomSeed | -XsetRandomSeed |
runtime | --runtime |
runtimeCacheDir | --runtime-cache |
licenseFile | -l | --license |
jmsConfigDir | --jmsConfig |
distMemStoreConfigDir | --distMemStoreConfig |
inputLogFile | --inputLog |
externalClock | -Xclock | --externalClock |
timerFrequency | --frequency |
truncateLogFile | -t | --truncate |
disableOptimizations | -g | --nooptimize |
includeDatabaseInInputLog | --noDatabaseInReplayLog |
statusLogIntervalSecs | --logQueueSizePeriod |
inputQueueSize | --inputQueueSize |
logFile | -f | --logfile |
The following table lists the elements that can be specified in the correlator/persistence section of the YAML configuration file:
This element | corresponds to this command-line option |
enabled | -P | -Penabled=true |
snapshotIntervalMillis | -PsnapshotIntervalMillis |
adjustSnapshot | -PadjustSnapshot |
storeLocation | -PstoreLocation |
storeName | -PstoreName |
clear | -Pclear |
The following table lists the elements that can be specified in the server section of the YAML configuration file:
This element | corresponds to this command-line option |
pidFile | --pidfile |
port | -p | --port |
name | -N | --name |
maxOutstandingSecs | -m | --maxoutstandingack |
maxOutstandingKb | -M | --maxoutstandingkb |
disconnectSlowConsumers | -x | -- qdisconnect |
The following table lists the remaining sections that can be specified in the YAML configuration file:
This element | corresponds to this command-line option |
jvmOptions | -J | --javaopt |
eplLogging/.root/level | --applicationLogLevel |
eplLogging/.root/file | --applicationLogFile |
correlatorLogging/level | -v | --loglevel |
Other elements are described in topics under
Configuring the correlator, and this also includes additional information for some of the elements that correspond to the command-line options. These are:
In the
correlator section:
In the
server section:
The
eplPlugins element is used for configuring EPL plug-ins. There is no equivalent command-line option. See
Writing EPL Plug-ins in Python for detailed information.
The following elements are used for configuring connectivity plug-ins. There are no equivalent command-line options. See
Using Connectivity Plug-ins for detailed information.
connectivityPlugins startChains dynamicChainManagers dynamicChains