We’re pleased to announce that IBM Integration Bus 10.0.0.16 is now available! This continues our delivery timeline of a new v10 fix pack roughly once each quarter. This latest offering provides maintenance fixes, and a single functional enhancement, known as the Exception Log resource manager.
This new resource manager provides a new form of tracing that can be enabled on an Integration Server that logs exceptions at their point of creation. This can be used by a flow developer or administrator to quickly diagnose issues with their message flows, especially ones which might be caused by incorrect exception handling.
The Exception Log is not enabled by default, and is controlled by three properties:
- enabled – Set this option to
true to enable the exception log.
- showNestedExceptionDetails – By default, the exception log will not include the details of any nested exceptions, as they will already have been printed earlier in the log. However, setting this option to
true will re-print nested exceptions and is useful if your exception log has many concurrent exceptions (in which case it may not be obvious which previous entry is the child of the current exception).
- includeFlowThreadReporter – If the exception occurred on a message flow thread, and this option is enabled, this will enable an additional contribution from the Flow Thread Reporter to be added to the exception which shows the flow thread history and stack. These details are quite verbose but are useful if you want to work out the precise location in a flow that an exception occurred, or what the passage through the flow was. Set this property to
true to enable it.
In IIBv10.0.0.16 these properties can be viewed and modified using the mqsireportproperties and mqsichangeproperties command, for example:
- mqsichangeproperties IntegrationNodeName -e IntegrationServerName -o ExceptionLog -n enabled,showNestedExceptionDetails,includeFlowThreadReporter -v true,true,true
- mqsireportproperties IntegrationNodeName -e IntegrationServerName -o ExceptionLog -a
Once enabled, the exception log will be written to MQSI-WORKPATH/common/log/IntegrationNodeName.IntegrationServerUUID.exceptionLog.txt. This is a rolling log file, so restarting the integration server will cause the old log to be moved and a numeric suffix appended to it.
The Exception Log includes a summary of the exception, a list of its inserts and the message numbers of any nested exceptions. For example, if an HTTP Input node is configured to received JSON messages with immediate parsing, but the input message is not JSON then the exception log will look something like this:
Exceptions are listed in the order of creation, they include a short description, a list of message inserts where appropriate, and a list of the message numbers of any nested exceptions.
We hope this short description of the new Exception Log resource manager feature is helpful, and hope you enjoy your wider usage of IIBv10.0.0.16!