Tracing

The parameters in the TRACING section of the file let you turn on and turn off tracing for InterChange Server components and specify the level of tracing.

DB_CONNECTIVITY

The level of tracing for interactions between the InterChange Server database connectivity service and the DBMS server. The ICS database connectivity service uses the Java Database Connectivity (JDBC) API to communicate with a database server.

Try tracing the database service if you suspect that ICS is having problems with access to the DBMS server. For example, if it seems to take a long time for System Manager to complete configuration changes that you enter, you might want to check that connection.

You can set tracing to the following levels:

Level Description
0 No tracing.
1 Prints messages when the database connectivity service connects to or disconnects from a data source, displaying actual statements. Also prints messages when the database connectivity service creates or deletes connection pools for services of InterChange Server.
2 Prints messages for level 1. In addition, prints messages describing connections that were created and released.
3 Prints messages for levels 1 and 2. In addition, prints messages indicating each internal step taken to find available connections. These steps involve scavenging the existing connection pools for the least recently used connections.
4 Prints messages for levels 1 through 3. In addition, provides more detail on the steps taken to find available connections.
5 Prints messages for levels 1 through 4. In addition, prints messages on the closing of idle connections.

Example: DB_CONNECTIVITY = 1

Default

DB_CONNECTIVITY = 0

FLOW_MONITORING

The level of tracing for internal messages.

Note:
This entry is for debugging only. Do not confuse this feature with Flow Monitoring itself.

Tracing levels may be set between 0 and 5.

You can set tracing to the following levels:

Level Description
0 No tracing.
1 Prints messages at boot time (where tracing is configured for a collaboration and displays the configuration to the database).
2 Prints messages for level 1. In addition, includes event removals from the internal queue.
3 Prints messages for levels 1 and 2. In addition, prints a message when an event record is removed through the API.
4 Prints messages for levels 1 through 3. In addition, prints a message when an event dispatches to the internal queue.
5 Prints messages for levels 1 through 4. In addition, prints database writes.

Example: F LOW_MONITORING = 1

Default

FLOW_MONITORING = 0

EVENT_MANAGEMENT

Specifies the level of tracing for the event management service.

You can set tracing to the following levels:

Level Description
0 No tracing.
1 Prints the event management service's requests to the database to store an event or to change the state information about an event. The trace information indicates the connector controller that received the event and the collaborations to which it was sent.
2 Prints messages for level 1. In addition, prints the content of the in-memory work-in-progress queue for each collaboration. The trace message includes the number of events in the collaboration's work-in-progress queue and the number of events in progress. Check to see whether items are moving off the queues or whether they are only being added.

Example:

EVENT_MANAGEMENT = 1

Default

EVENT_MANAGEMENT = 0

MESSAGING

The level of tracing for interactions between the messaging driver and the messaging service.

This parameter affects the messaging driver on the machine where the InterchangeSystem.cfg file resides. The messaging driver serves the InterChange Server components that are installed on that machine, such as:

You can set tracing to the following levels:

Level Description
0 No tracing.
1 Traces the messaging driver's receipt of messages from and the sending of messages to the messaging service. The trace message specifies whether the message is a typed (business object) message or an untyped (administrative) message.
2 Prints messages for level 1. Also prints the content of business objects sent and received.

Example:

MESSAGING = 2

Default

MESSAGING = 0 

REPOSITORY

The level of tracing for the repository service. This parameter displays the repository objects that are inserted, retrieved, and deleted.

You can trace the repository service when you experience problems with repository objects, such as those visible through System Manager.

You can set repository tracing to the following levels:

Level Description
0 No tracing.
1 Prints a message when the repository service retrieves an object (and its child objects if appropriate) from the database in response to a request.
2 Prints messages for level 1. In addition, prints a message when the repository service successfully adds a new object to the repository.
3 Prints messages for levels 1 and 2. In addition, prints a message when the repository service successfully changes a repository object.
4 Prints messages for levels 1 through 3. In addition, prints a message when the repository service successfully deletes an object from the repository.
5 Prints messages for levels 1 through 4. In addition, prints a message when the repository service creates a helper object. A helper object is the in-memory code that makes requests to and returns information from the database server. There is one helper object for each type of object stored in the repository.
6 Prints messages for levels 1 through 5. In addition, prints a message when InterChange Server creates the database schema for a repository object. These messages appear at startup.
7 Prints messages for levels 1 through 6. In addition, traces all internal repository methods.

Example: REPOSITORY = 3

Default

REPOSITORY = 0

TRACE_FILE

The location where InterChange Server writes trace messages when tracing is on. You can send trace messages to standard output (STDOUT) or to a file whose full path you specify.

If you do not specify a value for this parameter, InterChange Server writes messages to the destination for logging, which is the value of the LOG_FILE parameter.

Example: TRACE_FILE = logs\trace.log (in the ProductDir directory)

Default

TRACE_FILE = STDOUT

MIRROR_TRACE_TO_STDOUT

The parameter that allows you to send trace messages to standard output and to a trace file. If the TRACE_FILE parameter has been specified to a valid file, then setting MIRROR_TRACE_TO_STDOUT = TRUE mirrors the trace output to the standard output as well. This parameter is ignored if TRACE_FILE is not set.

Because of the performance overhead of trace file mirroring, set this parameter to true only during development and debugging. Set it to false or do not specify it at all (in which case it defaults to false) during production.

Default

The default value for this parameter is false (off).

MAX_TRACE_FILE_SIZE

The size limit of the trace file. The value can be in KB (kilobytes), MB (megabytes), or GB (gigabytes). If no unit is specified, then the unit defaults to bytes.

Examples:

MAX_TRACE_FILE_SIZE = 100 KB 
 
MAX_TRACE_FILE_SIZE = 5 MB 
 
MAX_TRACE_FILE_SIZE = 1 GB 
 
MAX_TRACE_FILE_SIZE = 8192

If a value for this parameter is specified, then trace archival is implicitly enabled.

Default

The default value for this parameter is UNLIMITED.

NUMBER_OF_ARCHIVE_TRACES

The number of archive traces to maintain. The names for the archive files are derived from the specified value of TRACE_FILE. This parameter is ignored if the parameter MAX_TRACE_FILE_SIZE is not specified or if TRACE_FILE=STDOUT is set.

Example. If, TRACE_FILE = traces\InterchangeSystem.trc in the ProductDir directory, and NUMBER_OF_ARCHIVE_TRACES = 3

the archive traces are named as follows (in the ProductDir directory):

traces\InterchangeSystem_Arc_01.trc 
traces\InterchangeSystem_Arc_02.trc
traces\InterchangeSystem_Arc_03.trc

Default

The default number of archives is 5, unless this is parameter overridden by the NUMBER_OF_ARCHIVE_TRACES, or unless MAX_TRACE_FILE_SIZE is set to a value other than UNLIMITED.

RELATIONSHIP.CACHING

A trigger for ICS to write a message to the trace file each time it loads or unloads the relationship tables of a static relationship in memory. Set this parameter to 5 to turn on this tracing. A value of 0-4 turns off this tracing. By default, this parameter does not exist in the TRACING section of the InterchangeSystem.cfg file. Therefore, tracing of cached relationship tables is disabled.

Example: RELATIONSHIP.CACHING=5

Default

The default value for this parameter is 0.

TRANSACTIONS

Specifies the level of tracing for the transaction service.

You can set tracing to the following levels:

Level Description
0 No tracing.
1 Prints a message when a transaction starts and when performing post-commit processing of the transactional queues.
2 Prints messages for level 1. In addition, prints a message when the transaction service saves the state of a business object in the transaction.
3 Prints messages for levels 1 and 2. In addition, prints a message when a transactional collaboration commits.
4 Prints messages for levels 1 through 3. In addition, prints messages about collaboration rollback. A message appears when rollback begins, and upon execution of each compensation step.
5 Prints messages for levels 1 through 4. In addition, prints a message at
warm-start recovery, which takes place when InterChange Server restarts
after an unexpected exit. The server reactivates transactional collaborations
that were interrupted by the unexpected exit and rolls them back. The server
does not deliver new events to the collaboration until warm-start recovery is complete, leaving them in the queue, where they are available for processing
at the end of the recovery period.

Example: TRANSACTIONS = 1

Default

TRANSACTIONS = 0 

SERVER_MEMORY

A trigger for the server to monitor memory usage for event triggered flows and to control memory growth by pausing adapters.

You can set tracing to the following parameters:

Parameter Description
MEMORY_UPPER_THRESHOLD_PCT Percentage of maximum memory
where the server pauses adapters.
MEMORY_LOWER_THRESHOLD_PCT Percentage of memory at which
the server starts pacing the listeners.
MEMORY_CHECK_SLEEP Frequency at which the memory
checker thread checks the server's
memory.
SLEEPTIME_AFTER_MAX_THRESHOLD Frequency at which the memory
checker thread checks the server's
memory after the adapters are paused.

Example:

MEMORY_UPPER_THRESHOLD_PCT = 90
MEMORY_LOWER_THRESHOLD_PCT = 75
MEMORY_CHECK_SLEEP = 1
SLEEPTIME_AFTER_MAX_THRESHOLD = 2

Default

MEMORY_UPPER_THRESHOLD_PCT = 90
MEMORY_LOWER_THRESHOLD_PCT = 80
MEMORY_CHECK_SLEEP = 0
SLEEPTIME_AFTER_MAX_THRESHOLD = 5

To see the trace of the memory checker thread, add the following parameter to the [TRACING] subsection:

SERVER_MEMORY = 1 to 3

DOMAIN_STATE_SERVICE

The level of tracing for the domain state service. This service keeps track of states of all components in the system.

Level Description
0 No tracing.
1 Prints messages when a component such as an adapter or collaboration is added to or deleted from the registry. It also prints messages when the status of a component changes, such as if a running adapter is stopped or paused.
2 Prints messages for level 1. In addition, prints a message when any methods are called.

Example: DOMAIN_STATE_SERVICE = 1

Default

DOMAIN_STATE_SERVICE = 0 

MQSERIES_TRACE_LEVEL

The level of tracing for debugging the connection with the WebSphere MQ messaging system. The tracing levels supply information about InterChange Server connection to the WebSphere MQ channel. More information can be found by searching the WebSphere MQ help area for tracing. To start a search, go to the Start menu > Programs > WebSphere MQ > WebSphere MQ Information Center and click the Search tab.

You can set tracing to the following levels:

Level Description
0 No tracing.
1 Provides entry, exit, and exception tracing.
2 Prints messages for level 1. In addition, provides parameter information.
3 Prints messages for levels 1 and 2. In addition, provides transmitted and received MQ headers and data blocks.
4 Prints messages for levels 1 through 3. In addition, provides transmitted and received user message data.
5 Prints messages for levels 1 through 4. In addition, provides tracing of methods in the Java Virtual Machine.

Default

MQSERIES_TRACE_LEVEL = 0

MQSERIES_TRACE_FILE

The file where WebSphere MQ trace messages are sent when tracing is on. If you do not specify a value for this parameter, the default file name ProductDir\mqseries\CwMQ.trc is used.

Example: MQSERIES_TRACE_FILE = MQSeries.trace.log (in the ProductDir directory)

Default

MQSERIES_TRACE_FILE = mqseries\CwMQ.trc (in the ProductDir directory)

Copyright IBM Corp. 1997, 2004