Housekeeping for logs

Transfer CFT logs all events, log messages, in a dedicated log file. While this information helps in detecting problems, it is important to note that the size of the Transfer CFT log files continually increases if no precautions are taken.

It is readable by the user via the Central Governance user interface or the CFTUTIL listlog command.

Rotate or switch log files

You can customize either the rotate or switch procedure to archive and clean out old log files.

On UNIX or Windows platforms the EXEC value is not mandatory, and by default an internal procedure is used. While there are several logging (CFTLOG) parameters that you can manage with Central Governance, if you need to modify the EXEC procedure you are required to use CFTUTIL.

The rotate and switch procedures can use the symbolic variables, &FLOG, for the name of the log file.

Rotate procedures


Use the internal log rotation procedure

To enable the internal log rotation procedure, leave the EXEC parameter set to empty (EXEC=''). The internal procedure uses the UCONF cft.cftlog.backup_count parameter to define the maximum number of log archives to keep.

Use a custom log rotation procedure

To create a custom log rotation procedure, you can use the sample file rotate.cmd, which is delivered with Transfer CFT, as a basis for your own procedure. The rotate.cmd sample file is located in the <runtime/exec> directory.

Switch procedure

All platforms

You can manage the switch procedure using various methods that include, but not limited to, the following:

  • File naming: Creates a log file each day using the same file name with a timestamp extension. Existing files are not removed.
  • Archiving: Transfer CFT log files are stored in the runtime directory, log file names are cftlog-<timestamp> where timestamp is the date and time the switch procedure switch.cmd is triggered by Transfer CFT.
Note At least one of the two files (either the log or alternate log file) must be empty prior to starting Transfer CFT.

Use the SWITCH command

To manually execute the log procedure, use the command:


A file can automatically be switched to another file by means of one of 4 events:

  • a daily schedule set by the SWITCH parameter
  • the number of records written in the current log file exceeds the limit set by the MAXREC parameter or, depending on the OS, the file is full
  • Transfer CFT is shut down via the SHUT command
  • Note To customize the switch that occurs when Transfer CFT shuts down, modify the UCONF parameter cft.cftlog.switch_on_stop=YES (the default value is NO).
  • Transfer CFT is activated

Limit entries in the log

For each transfer, there are multiple messages generated. You can significantly reduce the number of messages by using the CONTENT=BRIEF parameter setting in the log setting (CFTLOG).

Sending log messages to Sentinel

When Transfer CFT sends log messages to Sentinel or Central Governance, you can filter by the level of severity according to its type: warning, error, or fatal error. For example, to send only FATAL errors you could set the following value:

UCONFSET id=sentinel.xfb.log,value=F

Creating an exclusion log filter

Transfer CFT can filter log messages according to predefined filters to exclude certain types of messages.

Access the Unified Parameters uconf tool. Customize the uconf parameters to create the required filter pattern with one or more of the following characteristics:

  • cft.server.log.exclude_filters = ID1 ID2 ID3
    • Space separated list of filter identifiers
    • Only the log filters in the list are activated
  • cft.server.log.exclude_filters.ID.pattern=
    • The pattern matches a Log messages that is to be excluded from all Logs (Log output, Log file and Sentinel)
  • cft.server.log.exclude_filters.ID.comment=
    • A free field that you can use to describe the filter


CFTUTIL UCONFSET ID =cft.server.log.exclude_filters,
VALUE =cron_heartbeat
CFTUTIL UCONFSET ID =cft.server.log.exclude_filters.cron_heartbeat.pattern,
CFTUTIL UCONFSET ID =cft.server.log.exclude_filters.cron_heartbeat.comment,
VALUE ="Excludes from the log all cronjob messages concerning the ID HEARTBEAT"

Related Links