![]() |
![]() |
|
|
Troubleshooting
This chapter provides information to help you diagnose problems with your MessageQ application.
Error Logging
MessageQ has an error logging mechanism to display and capture informational, warning, and error messages that can occur during processing. The messages display a description of the condition to help developers gather more information about failure conditions within a message queuing group.
All logging information goes to the log file specified when the system is started using the -l option. If not specified, the logging information goes to the standard output on UNIX systems and to dmqlog<busid>_<groupid>.log in the directory in which the system is started on Windows NT or 64-bit Windows platforms. On Windows NT or 64-bit Windows platforms, when the system is started using the System Service or dmqmonw, the -l option defaults to DMQLOG<busid>_<groupid>.LOG in the winnt/system32 directory on a 32-bit Windows NT platform or %windir%\SysWOW64 directory on a 64-bit Windows platform (the defaults cannot be changed).
When using the MessageQ Client for Windows, all information logged goes to dmqerror.log in the current directory.
Tracing
MessageQ provides an execution tracing program for diagnostic purposes. Tracing produces a time-stamped output file showing the sequence of MessageQ function calls and return status codes. If the DMQ_TRACE_PREFIX environment variable is set, tracing information goes to $DMQ_TRACE_PREFIX.pid. If it is not set and the DMQ_TRACE_FILE environment variable is set, then tracing information will go to $DMQ_TRACE_PREFIX. Otherwise, tracing information will go to the standard output (this is not desirable on Windows NT). Each message will contain a time stamp if the DMQ_TRACE_TIMESTAMPS environment variable is set.
Client message tracing (sent and received messages) that is configured using dmqclconf on UNIX systems or dmqconf on Windows NT systems is written to the file dmqtrace.log in the current working directory.
Because tracing generates a high volume of output, you should enable tracing only for diagnostic purposes in the event of a problem. The following levels of tracing are provided:
Level |
Description |
Logfile |
---|---|---|
API |
Traces API calls and provides information on the messages sent or received |
|
Internal |
Traces execution of the lower software layers |
|
CLS |
Traces DMQCL.DLL execution events |
DMQTRACE.LOG |
Enabling Tracing
To enable tracing at MessageQ startup, set the environment variable (prior to invoking the MessageQ Group Control Process), as follows:
SET PAMS_TRACE=value
SET DMQIPI_TRACE=value
SET DMQCL_TRACE=value
where value is an arbitrary value (such as 1).
Disabling Tracing
To disable tracing, set the environment variables to a null value as follows:
SET PAMS_TRACE=
SET DMQIPI_TRACE=
SET DMQCL_TRACE=
You can check your environment variables at any time by entering SET at the command line.
|
Copyright © 2000 BEA Systems, Inc. All rights reserved.
|