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
["ITRS Analytics"] ["ITRS Analytics > FIX Monitor"] ["User Guide"]

Was this topic helpful?