Wednesday, February 17, 2010

MQ Problem determination - Queue Manager Diagnostics

Problem determination - Queue Manager Diagnostics

=> Error Reporting
- when connected to Queue Manager, all the logs routed to /var/mqm/qmgrs/QM_NAME/errors
- all other messages routed to /var/mqm/errors

=>Error message components
- message always include an identifier and basic text
- message contains date/date/pid/user/program/exception message/suggested action/source file which generated it
=> Log Rollover
- current message are always appended to the first error log
- rollover occurs when the log reaches ~256k
- this size setting can be changed by setting the following
-queue manager
ErrorLogSize=1048576 #1Mb error log file
-for System error logs
export MQMAXERRORLOGSIZE=1048576

=> Suppression of messages
- Allows non-critical messages to be suppressed
- can be set using the ini stanza
example
QMErrorLog:
ExcludeMesssage=9001,9002,9999 #don’t write these
SuppressMessage=9508 #only write once
Suppressinterval=30 #in any 30secs

=> Error log Recomandations
- save all error logs after a serious error occurs as well as the qm.ini
- be sure to note the time you observed the problem
- look for related messages before and after the time of the error
- try to correlate error log message with other diagnostics

=> FFST
- FFST is first failure support technology
- FFST are files written to /var/mqm/errors
- FFST file names format is AMQ[PID].x.FDC
- all threads in a process will append their FFSTs to the same file

=> FFST layout
-The header
this includes date/time/hostname/pids/probeID/builddate/user/program/process/thread/QM/probetype/monitcode etc…
-The Function stack
every thread executing MQ code has a thread control block which contains stack for MQ functions. this stack shows context in which error occured
-The Trace history
the trace shows sequence of events leading up to a failure
-The component dumps
shows the commom services control blocks
-Environment
includes all user settings at time of error

=> Base MQ tracing
- Tracing records the sequence of events in a program
- MQ supports tracing on all queue managers and clients
- Trace are binary files which requir formatting
- MQ shipps programs for starting/stopiing/formatting traces
-strmqtrc
-endmqtrc
-dspmqtrc
- traces are written to /var/mqm/trace
- trace contains a header with extended process information, then each line of trace contains pid/tid/trace data.

No comments:

Post a Comment