Ensuring that IBM MQ Managed File Transfer log messages are retained

IBM® MQ Managed File Transfer sends file transfer progress and log information to the coordination queue manager. The coordination queue manager publishes this information to any matching subscriptions to the SYSTEM.FTE topic. If there are no subscriptions, this information is not retained.

If transfer progress or log information is significant to your business, you must take one of the following steps to ensure that the information is retained:
  • Use the IBM MQ Managed File Transfer database logger to copy messages published to the SYSTEM.FTE/Log topic to an Oracle or Db2® database.
  • Define a subscription to the SYSTEM.FTE topic, which stores publications on an IBM MQ queue. Define this subscription before transferring any file transfers to ensure that all progress and log messages are retained on the queue.
  • Write an application that uses the message queue interface (MQI) or IBM MQ JMS to create a durable subscription and process the publications that are delivered to the subscription. This application must be in operation before any files are transferred to ensure that the application receives all progress and log messages.
Each of these approaches is described in more detail in the sections that follow.

Do not rely on the IBM MQ Explorer plug-in to retain log information.

Using the IBM MQ Managed File Transfer database logger to retain log messages

The database logger is an optional component of IBM MQ Managed File Transfer that you can use to copy log information in to a database for analysis and auditing purposes. The database logger is a stand-alone Java application that you install on a system that hosts the coordination queue manager and the database. For more information about the database logger, see Configuring an Managed File Transfer logger.

Retaining progress and log messages by using the IBM MQ Explorer plug-in

When an instance of the IBM MQ Explorer plug-in is first started, the instance creates a durable subscription on the coordination queue manager. This durable subscription is used to collect the information displayed in the Transfer Log and Current Transfer Progress views. The name of the durable subscription is prefixed with the host name of the system running the associated instance of IBM MQ Explorer. This prefix is added in case an administrator wants to delete a durable subscription that is no longer in active use by an instance of the IBM MQ Explorer plug-in.

Using a durable subscription on the coordination queue manager can cause messages to build up on the SYSTEM.MANAGED.DURABLE queues. If you have a high-volume IBM MQ Managed File Transfer network, use the IBM MQ Explorer plug-in infrequently, or this message data can fill the local file system.

To avoid this happening, you can specify that the IBM MQ Explorer plug-in use a non-durable subscription to the coordination queue manager. Perform the following steps in your IBM MQ Explorer:
  1. Select Window > Preferences > IBM MQ Explorer > Managed File Transfer
  2. From the Transfer Log subscription type list, choose NON_DURABLE.

Storing publications on an IBM MQ queue

To store log or progress messages on an IBM MQ queue, configure a subscription on the coordination queue manager that forwards messages to this queue. For example, to forward all log messages to a queue named LOG.QUEUE, submit the following MQSC command:

define sub(MY.SUB) TOPICSTR('Log/#') TOPICOBJ(SYSTEM.FTE) DEST(LOG.QUEUE)WSCHEMA(TOPIC)

After the log messages have been forwarded to an IBM MQ queue, they are persisted on the queue until they are processed by an IBM MQ application that uses the queue.

Writing applications that manage a durable subscription to the SYSTEM.FTE topic

You can write applications that manage their own durable subscriptions to the SYSTEM.FTE topic by using one of the application programming interfaces supported by IBM MQ. These applications can receive IBM MQ queue or log messages and act on them appropriately for your business needs.

For more information about the available application programming interfaces, see Developing applications.