Logging and Exception Handling
Overview
This chapter describes message logging, exception handling, and tracing for Adapter for MSMQ.
To view the list of error codes and supporting information, refer to Adapter for MSMQ Error Codes.
Adapter for MSMQ Logging Levels
Adapter for MSMQ uses Integration Server logging mechanism to log messages. You can configure and view Integration Server logs to monitor and troubleshoot Adapter for MSMQ. For detailed information about logging in Integration Server, including instructions for configuring and viewing the different kinds of logs supported by the server, see the IBM webMethods Integration Server Administrator’s Guide for your release.
Accessing the Adapter Logging Levels
About this task
Beginning with Integration Server 7.1, you can configure different logging levels for Adapter for MSMQ.
To access the adapter's logging information
Procedure
Changing the Logging Settings
About this task
Perform the following procedure to change the adapter's logging settings. For complete information about specifying the amount and type of information to include in the log, see the IBM webMethods Audit Logging Guide for your release.
To change logging settings for the adapter
Procedure
- Click Edit Logging Settings. Select the required Level of Logging for Adapter for MSMQ.
- After making your changes, click Save Changes.
Adapter for MSMQ Message Logging
Integration Server maintains several types of logs; however, Adapter for MSMQ logs messages only to the audit, error, and server logs. Because Adapter for MSMQ works in conjunction with the WmART package, the adapter's messages and exceptions typically appear within log messages for the WmART package, although that is not necessarily true for verbose-level messages.
The logging levels are different depending on which version of Integration Server you are running the adapter on, as shown in the following table.
| Integration Server | Log | Description |
|---|---|---|
| Integration Server 6.5 | Audit Log | You can monitor individual adapter services using the audit log as you would audit any service in Integration Server. The audit properties for an adapter service are available in each Adapter for MSMQ service template on the Audit tab. |
| Error Log | Adapter for MSMQ automatically posts critical-level and error-level log messages to the server's error log. These log messages will appear as adapter run-time messages. | |
| Server Log | Adapter for MSMQ posts messages to the Server log, depending on how the server log is configured. Critical-level through debug-level log messages appear as Adapter run-time log messages. Verbose Logging Levels log messages appear as Adapter for MSMQ log messages. The Verbose Logging Levels range from Level 5 (V1-Verbose1) through Level 8 (V4-Versbose4). | |
| Integration Server 7.1 and higher | Audit Log | You can monitor individual adapter services using the audit log as you would audit any service in Integration Server. The audit properties for an adapter service are available in each Adapter for MSMQ service template on the Audit tab. |
| Error Log | Adapter for MSMQ automatically posts fatal-level and error-level log messages to the server's error log. These log messages will appear as adapter run-time messages. | |
| Server Log | Adapter for MSMQ posts messages to the server log, depending on how the server log is configured. Fatal-level through debug-level log messages appear as adapter run-time log messages. Trace-level log messages appear as Adapter for MSMQ log messages. |
Adapter for MSMQ log messages appear in the format ADA.0660.nnnn, where:
- ADA is the facility code that indicates that the message is from an adapter.
- 0660 (or 660) is the Adapter for MSMQ major code, which indicates that Adapter for MSMQ generated the error.
- nnnn represents the error's minor code. For detailed descriptions of minor codes that Adapter for MSMQ uses, see Adapter for MSMQ Error Codes.
To monitor Adapter for MSMQ log messages in Integration Server log, ensure that your server log's logging settings are configured to monitor the following facilities:
- 0113 Adapter Runtime (Managed Object)
- 0114 Adapter Runtime
- 0115 Adapter Runtime (Listener)
- 0116 Adapter Runtime (Notification)
- 0117 Adapter Runtime (Adapter Service)
- 0118 Adapter Runtime (Connection)
- 0121 Adapter Runtime (SCC Transaction Manager)
- 0126 Adapter Runtime (SCC Connection Manager)
Adapter for MSMQ Exception Handling
If an Adapter for MSMQ object encounters an error with the MSMQ system, it will throw an adapter error coupled with the MSMQ error, exactly as it was thrown by the MSMQ system.
For example, if the property values of the MSMQQueueInfo object fail to refresh, you will receive an adapter error. This error indicates that the refresh failed, and the adapter error will contain the specific error generated on the MSMQ system indicating why the service failed. In this case, you would receive an MSMQ error specifying that the queue does not exist, or that you do not have sufficient permissions to perform the operation.
Adapter for MSMQ Error Codes
The following table lists Adapter for MSMQ error codes and provides information on the error message, reason, and possible action for each error.
| Error Code | Description |
|---|---|
| 100 | Fail to destroy non-transactional connection. |
| Explanation: The opened queue associated with the non-transactional connection cannot be closed. | |
| Action: Refer to the Microsoft MSMQ documentation and error codes. Contact your MSMQ system administrator. | |
| 150 | Resource connection exception. |
| Explanation: Cannot open MSMQ for connection. | |
| Action: Refer to the Microsoft MSMQ documentation and error codes. Contact your MSMQ system administrator. | |
| 151 | Fail to create MSMQ local transactional object. |
| Explanation: MSMQ internal transaction cannot be started. | |
| Action: Refer to the Microsoft MSMQ documentation and error codes. Contact your MSMQ system administrator. | |
| 152 | Fail to destroy transactional connection. |
| Explanation: The opened queue with the transaction connection cannot be closed. | |
| Action: Refer to the Microsoft MSMQ documentation and error codes. Contact your MSMQ system administrator. | |
| 354 | Adapter cannot open queue for operations. |
| Explanation: The queue path name or format name is not correct or is not specified. | |
| Action: Make sure that you provided a valid queue path name or format name. | |
| 450 | The monitored queue by listener is unavailable. |
| Explanation: The queue associated with the connection is not open. | |
| Action: Make sure the queue is still accessible. Restart the connection and the listener, if necessary. | |
| 451 | There is no notification associated with this listener or no notification is enabled on this listener. |
| Explanation: The listener does not have a notification associated with it or there is an associated notification but it is not enabled. | |
| Action: Configure and enable a notification, then enable the listener. | |
| 1000 | Adapter cannot initialize MSMQ message object. |
| Explanation: Failed to create the MSMQMessage object to provide access to the properties that define a message and the methods used to send the message to its destination queue. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes. | |
| 1002 | Fail to send message to non-transactional queue. |
| Explanation: Error occurs when a message is put on a non-transactional queue. | |
| Action: Refer to the Microsoft MSMQ documentation and error codes. | |
| 1004 | Fail to send message to transactional queue. |
| Explanation: Error occurs when a message is put on a transactional queue. | |
| Action: Refer to the Microsoft MSMQ documentation and error codes. | |
| 1005 | Fail to write byte sequence as message body. |
| Explanation: Error occurs when the adapter tries to write a byte sequence as a message body. | |
| Action: Check IOException for details. | |
| 1009 | Fail to read byte sequence from message body. |
| Explanation: Error occurs when the adapter tries to read a byte sequence as a message body. | |
| Action: Check IOException for details. | |
| 1015 | Fail to specify the message contents. |
| Explanation: Error occurs when setting message object contents. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1019 | Fail to retrieve the message contents. |
| Explanation: Error occurs when the adapter tries to read the message contents. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1046 | Adapter cannot initialize MSMQ queue object. |
| Explanation: Fail to create an MSMQQueue object that represents an open instance of a queue and provides the methods needed to read and delete the messages in the queue. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1047 | Adapter cannot close MSMQ queue. |
| Explanation: Error occurs when closing this instance of the queue. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1048 | Fail to return the cursor to the start of the queue. |
| Explanation: Error occurs when the adapter tries to reset the cursor position. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1049 | Cannot find out whether the queue is open or not. |
| Explanation: Fail to check if the queue is open. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1050 | Cannot retrieve message from non-transactional queue. |
| Explanation: Fail to retrieve or remove a message from a non-transactional queue. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1051 | Cannot retrieve message from transactional queue. |
| Explanation: Fail to retrieve or remove a message from a transactional queue. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1052 | Cannot peek message. |
| Explanation: Fail to peek the first message in the queue or the first message that matches the filter values in the queue. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1053 | Adapter cannot initialize management object of the specified queue. |
| Explanation: Fail to create an MSMQQueueInfo object that provides queue management for a single queue and provides methods for opening a queue, changing or retrieving the properties of a queue. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1054 | Adapter cannot refresh the property values of the queue management object. |
| Explanation: Fail to refresh the property values of the MSMQQueueInfo object. These values are retrieved from the directory service (public queues) or from the local computer (private queues). | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1056 | Adapter cannot open a queue. |
| Explanation: Fail to open a queue for sending, peeking at, or retrieving messages. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1057 | Cannot find the path name of the queue. |
| Explanation: Error occurs when the adapter tries to locate the complete Message Queuing path name of the queue. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1058 | Cannot set path name of the queue. |
| Explanation: Error occurs when the adapter tries to set the queue path name of a MSMQQueueInfo object. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error code for details. | |
| 1059 | Cannot find the format name of the queue. |
| Explanation: Error occurs when the adapter tries to find the format name of the queue. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1060 | Cannot set the format name of the queue. |
| Explanation: Error occurs when the adapter tries to set the queue format name of the MSMQQueueInfo object. | |
| Action: Check the AdapterException message. Refer to Microsoft MSMQ documentation and error codes for details. | |
| 1061 | Adapter cannot initialize transaction object. |
| Explanation: Fail to create an MSMQTransaction object. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1062 | Cannot commit MSMQ transaction. |
| Explanation: Fail to commit the transaction. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1063 | Cannot rollback MSMQ transaction. |
| Explanation: Fail to rollback the transaction. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1064 | Adapter cannot initialize the object to start MSMQ internal transaction object. |
| Explanation: Fail to create an MSMQTransactionDispenser object. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1065 | Fail to begin an MSMQ internal transaction. |
| Explanation: Error occurs when the adapter tries to initiate a new internal transaction and returns an MSMQ transaction object that represents the new underlying transaction object. | |
| Action: Check the AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1067 | Fail to get format name of a queue. |
| Explanation: MSMQQueueInfo object is NULL. | |
| Action: Ensure the connection is available and the queue is accessible. Re-enable the connection, if necessary. | |
| 1080 | Fail to set format name of queue. |
| Explanation: MSMQQueueInfo object is NULL. | |
| Action: Ensure the connection is available and the queue is accessible. Re-enable the connection, if necessary. | |
| 1081 | Fail to set path name of queue. |
| Explanation: MSMQQueueInfo object is NULL. | |
| Action: Ensure the connection is available and the queue is accessible. Re-enable the connection, if necessary. | |
| 1082 | Fail to get path name of queue. |
| Explanation: MSMQQueueInfo object is NULL. | |
| Action: Make sure the connection is available and the queue is accessible. Re-enable the connection, if necessary. | |
| 1084 | Cannot peek message contents. |
| Explanation: Fail to peek the contents of the first message in the queue or the content of the first message that matches the filter values in the queue. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1085 | Cannot get admin queue format name. |
| Explanation: Error occurs when the adapter tries to find the admin queue format name of the message. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1086 | Cannot get admin queue path name. |
| Explanation: Error occurs when the adapter tries to find the admin queue path name of the message. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1087 | Cannot get destination queue path name. |
| Explanation: Error occurs when the adapter tries to find the destination queue path name of the message. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1088 | Cannot get destination queue format name. |
| Explanation: Error occurs when the adapter tries to find the destination queue format name of the message. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1089 | Cannot set admin queue path name. |
| Explanation: Error occurs when the adapter tries to set the admin queue path name of the message. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1090 | Cannot set admin queue format name. |
| Explanation: Error occurs when the adapter tries to set the admin queue format name of the message. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1091 | Cannot find if the message is the first one in its transaction. |
| Explanation: Error occurs when the adapter tries to determine whether the message is the first one in its transaction. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1092 | Cannot find if the message is the last one in its transaction. |
| Explanation: Error occurs when the adapter tries to determine whether the message is the last one in its transaction. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1093 | Cannot specify the type of acknowledgment message that MSMQ will post in admin queue. |
| Explanation: Error occurs when the adapter tries to set the ack property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1094 | Cannot specify application-generated information. |
| Explanation: Error occurs when the adapter tries to set the AppSpecific property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1095 | Cannot specify whether the message should be authenticated and what type of digital signature is used. |
| Explanation: Error occurs when the adapter tries to set the AuthLevel property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1096 | Cannot specify how Message Queuing delivers the message. |
| Explanation: Error occurs when the adapter tries to set the Delivery property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1097 | Cannot specify whether Message Queuing stores copies of the message as it is routed to the destination queue. |
| Explanation: Error occurs when the adapter tries to set the Journal property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1098 | Cannot specify the message's priority. |
| Explanation: Error occurs when the adapter tries to set the priority property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1099 | Cannot specify a time limit (in seconds) for the message to be retrieved from the target queue. |
| Explanation: Error occurs when the adapter tries to set the TimeToBeReceived property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1100 | Cannot specify a time limit (in seconds) for the message to reach the queue. |
| Explanation: Error occurs when the adapter tries to set the TimeToReachQueue property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1101 | Cannot specify how Message Queuing traces the route of the message. |
| Explanation: Error occurs when the adapter tries to set the Trace property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1102 | Cannot find the type of acknowledgment messages that Message Queuing will post (in the administration queue) when acknowledgments are requested. |
| Explanation: Error occurs when the adapter tries to get the Ack property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1103 | Cannot find application-generated information. |
| Explanation: Error occurs when the adapter tries to get the AppSpecific property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1104 | Cannot find whether the message should be authenticated and what type of digital signature is used. |
| Explanation: Error occurs when the adapter tries to get the AuthLevel property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1105 | Cannot find the message type. |
| Explanation: Error occurs when the adapter tries to get the MsgClass property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1106 | Cannot find how Message Queuing delivers the message. |
| Explanation: Error occurs when the adapter tries to get the Delivery property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1107 | Cannot find whether Message Queuing stores copies of the message as it is routed to the destination queue. |
|
Explanation: Error occurs when the adapter tries to get the Journal property of the MSMQMessage object. |
|
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1108 | Cannot find the message's priority. |
| Explanation: Error occurs when the adapter tries to get the priority property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1109 | Cannot find the time limit (in seconds) for the message to be retrieved from the target queue. |
| Explanation: Error occurs when the adapter tries to get the TimeToBeReceived property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1110 | Cannot specify a time limit (in seconds) for the message to reach the queue. |
| Explanation: Error occurs when the adapter tries to get the TimeToReachQueue property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1111 | Cannot find how Message Queuing traces the route of the message. |
| Explanation: Error occurs when the adapter tries to get the Trace property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1112 | Cannot specify a description of the documentation message. |
| Explanation: Error occurs when the adapter tries to set the Label property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1113 | Cannot find the description of the message. |
| Explanation: Error occurs when the adapter tries to get the Label property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1114 | Cannot find the identifier of the source computer that sent the message. |
| Explanation: Error occurs when the adapter tries to get the SrcMachineId property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1115 | Cannot find when the message arrived at the queue. |
| Explanation: Error occurs when the adapter tries to get the ArriveTime property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1116 | Cannot find when the message is sent. |
| Explanation: Error occurs when the adapter tries to get the SendTime property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1117 | Cannot find whether the message was authenticated at the request of the sending application. |
| Explanation: Error occurs when the adapter tries to get the Authenticated property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1118 | Cannot find the message's 20-byte, correlation identifier. |
| Explanation: Error occurs when the adapter tries to get the CorrelationId property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1119 | Cannot find the message ID. |
| Explanation: Error occurs when the adapter tries to get the Id property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1120 | Cannot specify a message's 20-byte, correlation identifier. |
| Explanation: Error occurs when the adapter tries to set the CorrelationId property of the MSMQMessage object. | |
| Action: Check the successive AdapterException message. Refer to the Microsoft MSMQ documentation and error codes for details. | |
| 1121 | Unsupported message body type. |
| Explanation: The message body type you specified is not supported by the adapter. | |
| Action: Make sure that you are using the supported body types, which are String and byte array. |