Configuration parameters
The following parameters can be overridden in a custom Helm values file.
Default schedule Copied
The default schedule can be configured with either weekdays or daily recurrence. See Schedule types for more information.
Parameter: bffDaemon.config.defaultSchedule
Weekdays recurrence Copied
# Required. A default schedule is required to determine when FIX sessions are meant to be logged on or off.
# The application will not start without a default schedule.
default-schedule:
timezone: "America/New_York"
logon-time:
hour: 8
minute: 0
second: 0
logout-time:
hour: 17
minute: 0
second: 0
end-of-day-time:
hour: 18
minute: 0
second: 0
recurrence:
weekdays: true # Can be omitted, this is the default
Daily recurrence Copied
# Required. A default schedule is required to determine when FIX sessions are meant to be logged on or off.
# The application will not start without a default schedule.
default-schedule:
timezone: "UTC"
logon-time:
hour: 0
minute: 0
second: 0
logout-time:
hour: 23
minute: 59
second: 59
end-of-day-time:
hour: 23
minute: 59
second: 59
recurrence:
days:
- SUNDAY
- MONDAY
- TUESDAY
- WEDNESDAY
- THURSDAY
- FRIDAY
- SATURDAY
FIX sender CompIds prefixes Copied
Parameter: bffDaemon.config.fixSenderCompIds
# Optional. An array/list of FIX senderCompId prefixes which are used to determine the direction of FIX messages in
# relation to the customer environment. When the first FIX message arrives for a non-configured FIX session, this list
# is used to match the start of tag49 or tag56 values of the message. If none match, then the UI will show
# "Config Required".
# fixSenderCompIds:
# - COMPID1
# - COMPID2
FIX log filter Copied
Parameter: bffDaemon.config.fixLogEntityFilter
# Optional. Filter used to exclude or include the processing of inbound FIX events. Exclusions override inclusions.
# If no filtering configuration is set, all messages are processed.
fixLogEntityFilter:
# Required. The following exclusions are required when running alongside ITRS Analytics. Without them, an infinite logging loop
# is possible, which stops the processing of inbound messages.
exclusions:
service.name:
- fix-monitor-app
container:
- dpd
# inclusions:
# service.name:
# - some-service1
# container:
# - some-container-name1
Kubernetes resource sizing Copied
The number of FIX sessions your application instance plans to monitor can be used to set the Kubernetes resource settings. The following are example resource values based on the number of FIX sessions.
Parameter: bffDaemon.resources
| FIX Sessions | Requests (Memory) | Requests (CPU) | Limits (Memory) | Limits (CPU) |
|---|---|---|---|---|
| 1–500 (Default) | 1Gi | 500m | 2Gi | 1000m |
| 501–1000 | 2Gi | 1000m | 4Gi | 1500m |
| 1001–2000 | 6Gi | 1500m | 8Gi | 2000m |
Message index volume size Copied
When planning the volume size, consider the total number of FIX messages across all FIX sessions and the indexRetentionDays setting.
The following table provides a general guide for n FIX sessions producing one million messages per day:
| Sessions | Storage |
|---|---|
| 1-20 Sessions | 20GB |
| 21-50 Sessions | 50GB |
| 51-100 Sessions | 100GB |
| 101-1000 Sessions | 200GB |
Monitor your volume usage and adjust the configuration as needed. If the volume fills up too quickly, increase the volume size or reduce the indexRetentionDays setting.
Query service hostname and port Copied
# Required. Hostname and port where the ITRS Analytics Query Service Application is available. If the Query Service is not
# found, then the application will not start.
queryService:
hostname: localhost
port: 50054
FIX session schedule check interval Copied
Parameter: bffDaemon.config.scheduleCheckIntervalMillis
# Optional. Defaults to 5000ms (5secs). The interval between checking session's desired schedule against the actual
# schedule.
# scheduleCheckIntervalMillis: 5000
FIX message index retention days Copied
Parameter: bffDaemon.config.indexRetentionDays
# Optional. Defaults to 8 days. Used to control how long FIX messages are stored in the app. When the scheduled
# end-of-day trigger runs for each session, old FIX messages are removed.
# indexRetentionDays: 8
FIX log regex pattern Copied
Parameter: bffDaemon.config.fixLogRegex
# Optional. Defaults to "^.*8=FIX.*$". Used to configure the log filtering on ITRS Analytics.
# fixLogRegex: "^.*8=FIX.*$"
Request latest FIX messages on startup Copied
Parameter: bffDaemon.config.fixLogSubscriptionStartFromLatest
By default, FIX Monitor remembers where it last read FIX logs and continues from that point after a restart. Set this option to true to start from the latest available log position instead and override the saved position. Use this when you do not want older FIX messages replayed, or when resuming from the saved position causes startup issues.
# Optional. Defaults to false. When true, the Obcerv FIX log subscription starts from the latest log stream
# position and ignores any persisted offset.
# fix-log-subscription-start-from-latest: false
Allow invalid FIX messages Copied
Parameter: bffDaemon.config.allowInvalidFixMessages
By default, FIX Monitor uses strict FIX tag/value parsing. If a message contains a tag with an empty value (for example 10206=), the entire message is rejected and a warning is logged.
Set this option to true to allow tolerant parsing of messages that contain empty tag values. When enabled, empty-valued tags are retained as fields with an empty value rather than causing the message to be dropped. Structural fields are still required to parse the message, such as BeginString, MsgType, and type-length fields.
# Optional. Defaults to false.
# allowInvalidFixMessages: false
Less critical parameters Copied
Parameter prefix: bffDaemon.config.
# Optional. Defaults to 1,048,576. Controls the size of the inbound message processing queue. Configure a larger queue
# size for large bursts of messages at the trade-off of using more memory.
# fixLogQueueCapacity: 1048576
# Optional. Defaults to 72 hours. Used to control how long log messages are persisted in ITRS Analytics. Configure to higher for
# more durable log replay at the trade-off of larger DPD volume sizes.
# fixLogRetentionHours: 72
# Optional with no default. If set, the file is used as the source for FIX data and all other inbound data
# subscriptions are ignored. Useful in one-off testing situations.
# fixLogFile: fix-data1.log
# Optional. Defaults to "./offset". Directory where offset data will be stored for the ITRS Analytics log subscription.
# offsetDirectory: ./offset
# Optional. Defaults to "./index". Base directory where the FIX message index will be stored for each FIX session.
# indexDirectory: ./index
# Optional. Defaults to 10mil. Controls how large each FIX session's conversation indices can grow to. Indicies are
# purged when session EOD runs. Configure a higher value FIX message conversations may exceed 10mil in between purging.
# fixSessionConversations: 10000000