Copy the db2cos script <instance home>/sqllib/bin/ to <instance home>/sqllib/adm/ and modify below section(uncomment one line of errstring as you need):
Modify below section:
"DIAGSTRING")
echo "Diag String Caught" >> $logfile
if [ ! -n "$database" ]
then
db2pd -inst >> $db2pd_outfile
else
diagfile=$diagpath\db2diag.log
#get lastest MAX_LOG or NUM_LOG_SPAN or lock_escalation info from diag
echo "-------info from diag" >> $logfile
#MAX_LOG
#errstring='ADM1542W'
#NUM_LOG_SPAN
#errstring='ADM1541W'
#lock_escalation
errstring='ADM5502W'
grep -ip $errstring $diagfile|tail -11 >> $logfile
#get application handle
appnum=`echo $apphdl|awk -F '-' '{print $2}'`
#get snapshot for this application
echo "The application info which causing the error - APPID:$appnum" >> $logfile
db2 get snapshot for application agentid $appnum >> $logfile
fi
;;
Run command as below:
Run command to start catch info:
MAX_LOG:
db2pdcfg -catch diagstr='ADM1542W' count=1
NUM_LOG_SPAN:
db2pdcfg -catch diagstr='ADM1541W' count=1
lock escalation:
db2pdcfg -catch diagstr='ADM5502W' count=1
clear catch after things happened:
db2pdcfg -catch clear
check diagpath for file like *.cos.txt
Modify below section:
"DIAGSTRING")
echo "Diag String Caught" >> $logfile
if [ ! -n "$database" ]
then
db2pd -inst >> $db2pd_outfile
else
diagfile=$diagpath\db2diag.log
#get lastest MAX_LOG or NUM_LOG_SPAN or lock_escalation info from diag
echo "-------info from diag" >> $logfile
#MAX_LOG
#errstring='ADM1542W'
#NUM_LOG_SPAN
#errstring='ADM1541W'
#lock_escalation
errstring='ADM5502W'
grep -ip $errstring $diagfile|tail -11 >> $logfile
#get application handle
appnum=`echo $apphdl|awk -F '-' '{print $2}'`
#get snapshot for this application
echo "The application info which causing the error - APPID:$appnum" >> $logfile
db2 get snapshot for application agentid $appnum >> $logfile
fi
;;
Run command as below:
Run command to start catch info:
MAX_LOG:
db2pdcfg -catch diagstr='ADM1542W' count=1
NUM_LOG_SPAN:
db2pdcfg -catch diagstr='ADM1541W' count=1
lock escalation:
db2pdcfg -catch diagstr='ADM5502W' count=1
clear catch after things happened:
db2pdcfg -catch clear
check diagpath for file like *.cos.txt
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/75336/viewspace-2143115/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/75336/viewspace-2143115/