Backup and archive recommendations

#ItemHow often to backupNeed to stop engineRecommendations
1

FIXEdge binaries

Default path in the package:

  • FIXEdge - <FIXEdge_Package>/bin
  • FIXICC Agent - <FIXEdge_Package>/fixicc-agent/lib
Should be backuped before and after FIXEdge upgrade. N

Optional. Can be download from the official site.

To restore FIXEdge binaries, stop it and replace the files in the appropriate directories with the files from the backup
2

FIXEdge configuration

Default path in the package:

  • FIXEdge - <FIXEdge_Package>/FIXEdge1/conf
  • FIXICC - <FIXEdge_Package>/fixicc/etc folder
  • FIXICC Agent
    • Windows - <FIXEdge_Package>/fixicc-agent/FIXEdge1.fixicc-agent/conf
    • Linux -<FIXEdge_Package>/fixicc-agent/conf

Should be backuped before and after modifications.

For FIXEdge configuration - including changes done from FIXICC


N

It is responsible of FIXEdge user to track configuration changes. EPAM isn’t supposed to do it for the client.

Daily configuration backup is the good practice in case of frequent changes.

/etc/odbc.ini – could be considered as a part of FIXEdge configuration if FIXEdge uses DSN from there.

Be careful, all data sources (not only for FIXEdge) are configured in /etc/odbc.ini file

To restore FIXEdge configuration replace the files in the appropriate directories with the files from the backup. Settings will be applied after start/restart.



3

Operational scripts

Default path in the package:

  • FIXEdge - <FIXEdge_Package>/bin
  • FIXICC Agent
    • Windows - <FIXEdge_Package>/fixicc-agent/bat
    • Linux -<FIXEdge_Package>/fixicc-agent/bin

N

4

FIXEdge application logs

Default path in the package: <FIXEdge_Package>/FIXEdge1/log

Depends on maintenance window schedule defined by the user (daily or weekly)


Y

Keeping the recent logs are very useful for debugging and troubleshooting.

It is possible to configure the rotation of the logs at which the old logs will be overwritten by fresh ones. Log rotation allows to limit space for application log. Otherwise, FIXEdge user should be aware of free disk space.

Example:

FIXEdge.properties
Log.File.Rotate=true
Log.File.Cycling=true
# Maximum 100MB for FIXEdge log 
Log.File.Rotate.SizeLimit = 104857600 
# 5 files total (i.e. 500MB)
Log.File.Rotate.FileLimit = 5

Log.File.Name = FIXEdge1/log/FixEdge.log

Log.File.Rotate.Dir = <path to archive storage>/log

Archiving roteted logs FIXEdge.log.N not required stop the application

5

FIXICC Agent application logs

Default path in the package:

  • Windows - <FIXEdge_Package>/fixicc-agent/FIXEdge1.fixicc-agent/logs
  • Linux -<FIXEdge_Package>/fixicc-agent/logs
Depends on maintenance window schedule defined by the user (daily or weekly)Y

Keeping the recent logs are very useful for debugging and troubleshooting.

FIXICC used Log4j library.

Archiving roteted logs fixicc-agent.log not required stop the application

6Sessions logsDepends on sessions schedule (daily or weekly)N

Should be archived somewhere by default it is <FIXEdge_Package>/FIXEdge1/logs/archive

Archiving is done automatically for session on  TerminateTime.

TerminateTime  should be 1-2 minutes earlier than FIXEdge shutdown to ensure that all logs moved correctly.

For session logs storage speed is important, so quick storage should be used. Archived Logs could be moved to slower storage

Example:

Make sure that session log enabled:

engine.properties
LogIncomingMessages = true
LogDirectory = FIXEdge1/log

To configure

  • path to the archive,
  • schedule for the session,
  • session logs storage type

FIXEdge.properties
FixLayer.FixEngine.Sessions.ArchivePath = <path to archive storage>/log

#Session Schedule configuration: Monday-Friday, 07:00 - 23:00. End of day 23:10
Schedules.ClientSchedule1.StartTime = 0 0 7 * * 2-6
Schedules.ClientSchedule1.TerminateTime =  0 0 23 * * 6

# ...

FixLayer.FixEngine.Session.Session1.Schedule =  ClientSchedule1
FixLayer.FixEngine.Session.Session1.StorageType = persistentMM

Such configuration allows run FIXEdge with minimum space requirements.

7File HistoriesAs histories are changed during a day it is better to archive it dailyY

Example:

BL_Config.xml
...

<History Name="SessionData" 
  StorageType="File"
  WorkingDirectory="FIXEdge1/log/" 
  StorageFileName="SessionData">
  <KeyFields>49, 56</KeyFields>
  <Fields>553</Fields>
 </History>

...


For the history "SessionDate" be sure to configure backup files

  • FIXEdge1/log/SessionData.history
  • FIXEdge1/log/SessionData.header

for example, using the cron.

8ODBC HistoriesAs histories are changed during a day it is better to archive it daily-Should be done by 3rd party tools, EPAM is not responsible for DB backup.