CICS錯誤定位與分析解讀課件_第1頁
CICS錯誤定位與分析解讀課件_第2頁
CICS錯誤定位與分析解讀課件_第3頁
CICS錯誤定位與分析解讀課件_第4頁
CICS錯誤定位與分析解讀課件_第5頁
已閱讀5頁,還剩55頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

錯誤定位劉睿錯誤定位劉睿概要錯誤日志分類Console文件Symrecs文件CSMT.out文件Dump和Traceback文件CICSDumpTraceback文件可用的系統(tǒng)工具綜合分析概要錯誤日志分類2錯誤日志分類錯誤日志分類錯誤日志文件CONSOLE文件

CICSRegionStartup,Shutdown,TransactionError/Failure…SYMRECS文件

CICSErrorConditions,SymptomRecordsandStacktrace.TRACEBACK文件

stackinformationwhenanExceptionoccursinCICS.(IllegaladdressorIllegalinstruction)CSMT.out文件

TransactionErrorMessages,CommunicationErrors….env文件Dump文件XALog文件CICSTrace錯誤日志文件CONSOLE文件

CICSRegionSt4Console文件Console.nnnnnn位于/var/cics_regions/<regionname>/最大長度取決于RD:MaxConsoleSize。如果寫信息到stderr的話,就會寫入Console文件。信息分類:Information消息例:

ERZ010054I/02052006-07-2411:34:48.827332000CICSNT013264/0001:CICS自相一致性檢查完成Warning消息例:

ERZ016050W/02342006-07-2411:36:53.175833000CICSNT012260/0001:事務(wù)處理'CRTE'的邏輯工作單元已被逆序(現(xiàn)場)恢復(fù);分布式事務(wù)處理服務(wù)(TRAN)原因'ENC-tra-1025:客戶機(jī)(不是事務(wù)服務(wù))異常中止‘Error消息例:

ERZ058009E/00202006-07-2411:36:55.629361000CICSNT012260/0001:代碼頁‘IBM-1381’和代碼頁‘IBM-850’之間的數(shù)據(jù)轉(zhuǎn)換例程不可用,錯誤號為2Console文件Console.nnnnnn位于/va5Console信息舉例ERZ010054I/02052006-07-2411:34:48.827332000CICSNT013264/0001:CICS自相一致性檢查完成ERZ014040E/01072006-07-2411:36:29.011086000CICSNT012260/0001AB34:在程序‘DFHCEMT’中事務(wù)‘CEMT’發(fā)生首次異常結(jié)束‘A28B’ERZ014016E/00282006-07-2411:36:29.071172000CICSNT012260/0001AB34:事務(wù)處理'CEMT',在'AB34'異常終止'A147'。SERVICE_MESSAGE2006-07-2411:36:29.101216000CICSNT012260/0001:Abend'A147'(firstabend'A28B')isreportedastransaction'CEMT'isforce-purged.ERZ058009E/00202006-07-2411:36:53.075689000CICSNT012260/0001:代碼頁‘IBM-1381’和代碼頁‘IBM-850’之間的數(shù)據(jù)轉(zhuǎn)換例程不可用,錯誤號為2ERZ014010E/00122006-07-2411:36:53.105732000CICSNT012260/0001:不能初始化遠(yuǎn)程系統(tǒng)的通信以運(yùn)行事務(wù)處理'CRTE'。ERZ014016E/00362006-07-2411:36:53.135776000CICSNT012260/0001:事務(wù)處理'CRTE',在'????'異常終止'A28D'。ERZ016050W/02342006-07-2411:36:53.175833000CICSNT012260/0001:事務(wù)處理'CRTE'的邏輯工作單元已被逆序(現(xiàn)場)恢復(fù);分布式事務(wù)處理服務(wù)(TRAN)原因'ENC-tra-1025:客戶機(jī)(不是事務(wù)服務(wù))異常中止'ERZ058009E/00202006-07-2411:36:55.629361000CICSNT012260/0001:代碼頁‘IBM-1381’和代碼頁‘IBM-850’之間的數(shù)據(jù)轉(zhuǎn)換例程不可用,錯誤號為2ERZ014010E/00122006-07-2411:36:55.659404000CICSNT012260/0001:不能初始化遠(yuǎn)程系統(tǒng)的通信以運(yùn)行事務(wù)處理'CRTE'。ERZ014016E/00362006-07-2411:36:55.699462000CICSNT012260/0001:事務(wù)處理'CRTE',在'????'異常終止'A28D'。ERZ034114E/07312006-07-2411:36:55.699505000CICSNT013884/0001:從運(yùn)行時數(shù)據(jù)庫中嘗試卸裝條目'@1AN'失敗。條目標(biāo)記為使用。ERZ016050W/02342006-07-2411:36:55.729505000CICSNT012260/0001:事務(wù)處理'CRTE'的邏輯工作單元已被逆序(現(xiàn)場)恢復(fù);分布式事務(wù)處理服務(wù)(TRAN)原因'ENC-tra-1025:客戶機(jī)(不是事務(wù)服務(wù))異常中止'Console信息舉例ERZ010054I/02052006Symrecs文件symrecs.nnnnnn位于/var/cics_regions/<regionname>/Symrecs記錄的格式:SYMPTOMS=primarysymptomdataSECONDARYSYMPTOMS=secondarysymptomdataSymrecs文件symrecs.nnnnnn位于/va7Symrecs記錄舉例SYMPTOMS=PIDS/5765E2820LVLS/430PTFS/RIDS/TasLU_UpdateTidStateLINE/-1MS/016001MSN/63SRC/11PRCS/2097152AB/U1601PID/40608TID/1TIME/030112052304ISTSECONDARYSYMPTOMS=PostMortem(ErrorPathisoffsetx'594'inTasLU_UpdateTidState<TasLU_ISyncpoint<TasLU_Syncpoint<PinCA_Route<CICSAPIE)loggingwhereerroroccurredSymrecs記錄舉例SYMPTOMS=PIDS/5768CSMT.out文件位置:/var/cics_regions/<regionname>/data也可以寫應(yīng)用信息到CSMT.out文件:

EXECCICSWRITEQTDQUEUE("CSMT")FROM(debug-data)TXSeriesv6.2以后可以限制文件的最大長度為:TDD:CSMT:MaxSize。CSMT.out文件位置:/var/cics_regions9CSMT.out信息舉例ERZ015033E/000303/10/0309:35:09CICSMAINUHHP:Transaction'QA55'attemptstorunprogram'QA55SUB'whichisnotdefinedinthedatabaseERZ015033E/000303/10/0309:36:52CICSMAINYHHP:Transaction'QA55'attemptstorunprogram'QA55SUB'whichisnotdefinedinthedatabaseCSMT.out信息舉例ERZ015033E/00030310CSMT.out信息舉例ERZ028001E/621201/28/0315:19:45CICSPRODPS12:Theconnectiontotheremotesystem'HOST'cannotbestarted.Communicationserror15a00002/15a00102ERZ042028I/015901/28/0315:19:56CICSPROD:Terminal'PS12'withNETNAME'PS12'hasbeenuninstalled.ERZ042043I/080201/28/0315:20:00CICSPROD:WaitingfortaskstofinishwithCDentry'04PS'forremotesystem'PS04'ERZ016050W/023401/28/0315:23:26CICSPROD:Logicalunitofworkfortransaction'TPSL'hasbeenbackedout;DistributedTransactionService(TRAN)reason'ENC-tra-1025:Aclient(notthetransactionservice)aborted'CSMT.out信息舉例ERZ028001E/62120111一些Communicationserrorcode的含義15a00002/15a00102原因之一:遠(yuǎn)端域宕機(jī),或者網(wǎng)絡(luò)不通原因之二:在本地TD:timeout超時,遠(yuǎn)端交易還在隊列LINK返回SysIdErr15a00007/a0000100Connectionfailed原因之一:在本地TD:timeout超時,遠(yuǎn)端交易還在運(yùn)行LINK返回TermErr#注:在cics_eci.h中說明了所有主碼為15a00007的解釋。15a00007/84b6031Transactionunavailable原因之一:RD:MaxTClassLim引起的RejectLINK返回TermErr15a00007/8640000RemoteTransactionAbend引發(fā)本地交易肯定Abend一些Communicationserrorcode的含義12<region

name>.env示例<regionname>.env示例13Dump和Traceback文件Dump和Traceback文件CICSDump內(nèi)容TransactionDump將內(nèi)存寫入Dump文件中SystemDump上一次CICS命令執(zhí)行的細(xì)節(jié)每一筆交易的執(zhí)行細(xì)節(jié)Region的在Dump當(dāng)時的配置非交易類進(jìn)程的情況,例如recoveryserverEncinaClient的信息所有EnabledCICSTrace信息CICSDump內(nèi)容TransactionDump15CICSDump文件目錄RD.DumpName 缺省為dumpsRD.CoreDumpName 缺省為dir1文件名AAAANNNN.dmpmmAAAA-ASRA,ASRB,SYSA,SHUT,SNAP,dumpcode,abendcodeNNNN–序列號mm–文件序號,如果文件太大,自動被切成多個,用01,02標(biāo)記CICSDump文件目錄16CICSDump設(shè)置方法TD.TransDumpRD.SysDumpRD.PCDumpRD.ABDump描述nono不生成任何Dumpnoyes在以下情況異常終止異常shutdownCEMTPERFORMSNAP生成SystemDumpyesnonono僅生成TransactionDump,不含ASRA和ASRByesno為ASRA生成TransactionDumpyesno為ASRB生成TransactionDumpyesyesyes為ASRA生成SystemDumpyesyesyes為ASRB生成SystemDumpCICSDump設(shè)置方法TD.TransDumpRD.S17CICSDump的設(shè)置離線設(shè)置TD.TransDumpRD.SysDumpRD.PCDumpRD.ABDump在線設(shè)置CEMTINQUIRE/SETDUMPCEMTINQUIRE/SETDUMPOPTIONsUserExitDumpRequestUserExit(UE052017)CICSDump的設(shè)置離線設(shè)置18生成CICSDumpTransactionDumpEXECCICSDUMPEXECCICSABENDCECIDUMPCECIABEND交易異常終止,包含ASRA和ASRBSystemDump系統(tǒng)異常終止CICSshutdownCEMTPERFORMSNAPASRAASRB生成CICSDumpTransactionDumpSy19CICSDump轉(zhuǎn)換工具Cicsdfmt

cicsdfmt–r<域名><DMP文件名>CICSDump轉(zhuǎn)換工具Cicsdfmt

cicsdfm20CICSDump格式DumpStartMessage****CICSDUMPDETAILS(InfDU)****HeaderDumpFileName =SNAP0001.dmpDumpReason =CEMTPERFORMSNAPissuedDatedumpcreated =12/08/01Timedumpcreated =20:23:16ModuleServiceLevels@(#)super,16:08:18,Dec151999,s430-L991025-I@(#)conco,15:40:00,Dec151999,s430-L991025-I@(#)conti,15:43:14,Dec151999,s430-L991025-I@(#)comrl,15:52:50,Dec151999,s430-L991025-IDetailForEachModuleRegionconfigurationRegionPoolStorageRegionControlAreaIntervalControlAreaCICSModuleControlAreaCICSTraceRD.TransDumpTrace=yesDumpCompleteMessage****CICSDUMPCOMPLETE(InfDU)****CICSDump格式DumpStartMessage21CICSDump–RegionConfig–RD****DATABASECLASSMODULE(RegDC)****DUMPSTARTFORCLASSRERuntimedatabaseforClassRD BufferAddress=0x38e153f4......RegREIEntry:...... Nameofthedefaultuseridentifier=CICSUSER

CICSReleaseNumber=0430 Regionsystemidentifier(shortname)=ISC0 Regionapplicationidentifier(longname)=CICSRGN

MinimumnumberofApplicationServerstomaintain=1 MaximumnumberofApplicationServerstomaintain=5 RegionPoolStorageSize(bytes)=2097152 Task-privateStorageSize(bytes)=1048576 TaskSharedPoolStorageSize(bytes)=1048576 ThresholdforRegionPoolshortonstorage(%age)=90 ThresholdforTSHPoolshortonstorage(%age)=90 NumberofTaskSharedPoolAddressHashBuckets=512......CICSDump–RegionConfig–RD22CICSDump–RegionConfig–TD****DATABASECLASSMODULE(RegDC)****DUMPSTARTFORCLASSTRRuntimedatabaseforClassTD BufferAddress=0x38e15400......RegTRIEntry:...... Resourcekeybuffer=THLO Grouptowhichresourcebelongs=Samples Activatetheresourceatcoldstart?=yes Resourcedescription=TransactionDefinition TypeofRSLChecks=none TypeofTSLChecks=internal Firstprogramname=PHELLO......CICSDump–RegionConfig–TD23CICSDump–RegionConfig–PD****DATABASECLASSMODULE(RegDC)****DUMPSTARTFORCLASSPRRuntimedatabaseforClassPD BufferAddress=0x38e153f0......RegPRIEntry:...... Resourcekeybuffer=PHELLO

Grouptowhichresourcebelongs=Samples Activateresourceatcoldstart?=yes Resourcedescription=ProgramDefinition Numberofupdates=0 Protectresourcefrommodifications?=FALSE Programpathname=E:\TXSeries\CICS_Samples\Exercise_BMS/Hello Programtype=program......CICSDump–RegionConfig–PD24CICSDump–RegionConfig–UD****DATABASECLASSMODULE(RegDC)****DUMPSTARTFORCLASSUSRuntimedatabaseforClassUD BufferAddress=0x38e1540c......RegUSIEntry: Resourcekeybuffer=CICSUSER

TransactionLevelSecurityKeyList=0000000100000000 ResourceLevelSecurityKeyList=00000000 DCEprincipaloftheuser=CICSUSER Userpriority=0 Encryptedpassword=......RegUSIEntry: Resourcekeybuffer=TESTUSER

TransactionLevelSecurityKeyList=0000000100000000 ResourceLevelSecurityKeyList=00000000 DCEprincipaloftheuser=TESTUSER Userpriority=0 Encryptedpassword=SgJAEYVDLJQCICSDump–RegionConfig–UD25CICSDump–TransactionScheduler****SCHEDULERMODULE(ConTS)****ConTSprivateRCAData: ClassTable: Class0tasks:waiting=0 active=1 max,lim=n/a,n/a Class1tasks:waiting=0 active=0 max,lim=1,0 Class2tasks:waiting=0 active=0 max,lim=1,0 ...... ApplicationServers:Min=1,Current=3,Max=5 ServerIdleTime(seconds)=3600 IdleApplicationServerQueue: Anchor=0x70000994,First=0x700a62fc,Last=0x700a62a0 WaitingTasksQueue: Anchor=0x70000828,First=0x70000828,Last=0x70000828 RunningTasksQueue: Anchor=0x70000820,First=0x700a21bc,Last=0x700a21bcListofidleapplicationservers: ServerNumber102 ...... ServerNumber101 ......ListofRunningtransactions: TaskNo=71,TranId=CEMT,UserId=,DeviceId= AppServer=105,State=Running,Class=0,Priority=255CICSDump–TransactionSchedu26CICSDump–TaskControlAreaTaskControlAreaHeader: AIXprocessID =2520 ApplicationServerID =105 ......TaskControlAreaTaskspecificpart: UserName =CICSUSER TCAForcePurgeflag? =FALSE TCAPurgeflag? =FALSE ReturnTran? =FALSE

UserMode? =FALSE (若TRUE,出錯一定在用戶代碼中,需要進(jìn)一步調(diào)試程序) (若FALSE,出錯可能是應(yīng)用程序調(diào)用CICSAPI不當(dāng)引起) ......EXECInterfaceBlock: ============CICSEIBstructure============== EIBTIME:Timetaskstarted =Ox0202308C EIBDATE:Datetaskstarted =Ox0101224C EIBTRNID:TransactionID =CEMT EIBRCODE:ResponseCode =Ox000000000000 ......CICSDump–TaskControlAreaT27CICSDump–ControlModuleProgramControlInformation: ProgramName =DFHCEMT ValueofResidentattribute =No Programfullpathname =C:\opt\cics\bin\DFHCEMT.dllProgramData:BufferAddress =0x3815e000Offset0123456789ABCDEFASCIIEBCDIC------------------------------------------------------------------------------000000000000000000006300FFFF00000000[........c.......][................]001000000000000000200100010000000000[...............][................]00000000...4linesofzerossuppressed......EXECCICScommandstring: BufferAddress=0x127044

EXECCICSGETMAIN SET(X'00128110') FLENGTH(9200) INITIMG(0) NOHANDLECICSDump–ControlModuleProg28通過Dump尋找應(yīng)用錯誤(AIXOnly)加編譯開關(guān)cicstcl–s 或 CCFLAGS=“-qlist”會在編譯后生成*.lst文件設(shè)置RD屬性RD.ABDump=no

或:CEMTSETDUMPOPTIONSNOABABENDRD.PCDump=no

或:CEMTSETDUMPOPTIONSNOPCABEND設(shè)置TD屬性TD.TransDump=yes交易出錯時生成TransactionDump/var/cics_regions/region/dumps/dir1/AAAANNNN.dmpmm/var/cics_regions/region/dumps/dir1/cicsASPID.traceback通過Dump尋找應(yīng)用錯誤(AIXOnly)加編譯開關(guān)29通過Dump尋找應(yīng)用錯誤(AIXOnly)格式化Dump文件cicsdfmt–r<域名>AAAANNNN.dmpmm>AAAANNNN.dmpmm.txt注意,不同平臺上的Dump文件不一定可以相互做格式化例如AIX上的Dump文件在NT上不能做cicsdfmt在txt中查找調(diào)用堆棧,找到出錯點對照*.lst文件,找到出錯代碼行對照*.c文件,找到出錯代碼通過Dump尋找應(yīng)用錯誤(AIXOnly)格式化D30尋找錯誤(AIXOnly)–Sampleconsole.msgERZ052004I/060209/05/0104:44:12CICSRGNGPAC:Dumpto'ASRA0006.dmp'started.ERZ052007I/060409/05/0104:44:12CICSRGNGPAC:Dumpto'ASRA0006.dmp'completed.ERZ014016E/002809/05/0104:44:12CICSRGNGPAC:Transaction'TDPU',Abend'ASRA',at'GPAC'.ERZ015028W/015409/05/0104:44:12CICSRGNGPAC:Exceptioninuserapplicationcode-exceptionstringis:'exc_e_illaddr'ERZ016050W/023409/05/0104:44:12CICSRGNGPAC:Logicalunitofworkfortransaction'TDPU'hasbeenbackedout;DistributedTransactionService(TRAN)reason'ENC-tra-1025:Aclient(notthetransactionservice)aborted'尋找錯誤(AIXOnly)–Sampleconsol31尋找錯誤(AIXOnly)–SampleASRA0006.dmp01.txt****STARTOFTRANSACTIONDUMP****ApplicationServerid=102TransactionId=TDPUUserName=CICSUSERDetailsoffunctionbeingexecuted:0x2ff1e8c0FunctionName=mainServiceLevel=Offsetofcurrentinstruction=0x1e8Calledbyfunction=PinCA_StartCfromoffset=0x148Calledbyfunction=TasPR_CallApplicationfromoffset=0x404Calledbyfunction=TasPR_RunProgramfromoffset=0x11d8......尋找錯誤(AIXOnly)–SampleASRA0032尋找錯誤(AIXOnly)–SampleTransactionDumpUser.lst......79|CL.2:84|0001CClwz8062000C1L4Agr3=._iob(gr2,0)84|0001D0addi386300402AIgr3=gr3,6484|0001D4addi389F00641AIgr4=gr31,10084|0001D8bl4BFFFE290CALLgr3=fprintf,2,gr3,gr4,fprintf",...84|0001DCori60000000186|0001E0lwz8061004C0L4Agr3=pStringBuffer(gr1,76)86|0001E4addi389F00781AIgr4=gr31,120

86|0001E8lswi7CA4F4AA4LSIgr5-gr12=+CONSTANT_AREA(gr4,0),3086|0001ECstswi7CA3F5AA4STSI#MEMORY(gr3,0)=30,gr5-gr12,mq"87|0001F0lwz806100481L4Agr3=pCommArea(gr1,72)87|0001F4lwz8081004C0L4Agr4=pStringBuffer(gr1,76)87|0001F8bl4BFFFE090CALLNgr3,#MEMORY=strcpy,...87|0001FCori60000000192|000200lwz83C200080L4Agr30=.$STATIC_BSS(gr2,0)92|000204addis3C6020001LIUgr3=8192尋找錯誤(AIXOnly)–SampleTransa33尋找錯誤(AIXOnly)–SampleTransactionDumpUser.c21voidmain()22{24longlRespCode;25char*pCommArea;26char*pStringBuffer=0;29EXECCICSADDRESSEIB(dfheiptr)RESP(lRespCode);......57EXECCICSADDRESSCOMMAREA(pCommArea)RESP(lRespCode);......84fprintf(stderr,"CommArea=[%s]\n");8586strcpy(pStringBuffer,"TransactionDumpinUSERcode");87strcpy(pCommArea,pStringBuffer);90EXECCICSRETURN;98}尋找錯誤(AIXOnly)–SampleTransa34Traceback文件CICSproducestracebackfileswhenanapplicationorCICSinternalcoderaisesanillegalexception(SigSEGV,SigILL).TracebackFilesaregeneratedunderthedirectory/var/cics_regions/<regionname>/dumps/dir1Thegeneratedtracebackfilewillhaveafilenamecics<pid>.tracebackwhere:pidistheprocessidwhichhasgeneratedtraceback.Traceback文件CICSproducestrace35Traceback文件信息舉例-----------------StackTraceback--------------------PID=32782,TID=19-FunctionstrlenOffset=00948-FunctionmainOffset=01047-FunctionPinCA_StartCOffset=01D06-FunctionTasPR_CallApplicationOffset=05085-FunctionTasPR_RunProgramOffset=14D84-FunctionTasPR_IRunOffset=1FEC3-FunctionTasTA_ExecOffset=1CA02-FunctionTasTA_RunOffset=1C281-FunctionmainOffset=0B680-Function__startOffset=0088……Traceback文件信息舉例---------------36Traceback文件信息舉例……16-FunctionsqlallOffset=166015-FunctionsqlselOffset=034414-FunctionsqlnstOffset=0CCC13-FunctionsqlcmexOffset=02B412-FunctionsqlcxtOffset=007411-FunctionmainOffset=055810-FunctionPinCA_StartCOffset=01489-FunctionTasPR_CallApplicationOffset=03D88-FunctionTasPR_RunProgramOffset=11D87-FunctionTasPR_IRunOffset=13B06-FunctionTasPR_RunOffset=0AB05-FunctionPinCA_RouteOffset=06C44-FunctionComFS_APPCServOffset=0D503-FunctionTasTA_ExecOffset=19342-FunctionTasTA_RunOffset=16441-FunctionmainOffset=09B40-Function__startOffset=0060Traceback文件信息舉例……37可用的系統(tǒng)工具可用的系統(tǒng)工具利用系統(tǒng)工具診斷showProcInfo(Encinashipsthistool)dbxdumpThreadsAIX或其它UNIX命令工具利用系統(tǒng)工具診斷showProcInfo(Encina39showProcInfo與dbx.showProcInfoisaEncinasupplieddebuggingtool.Itisbasedondbx,whichisaOS(inthiscaseAIX)supplieddebugger.dbxisavailableonSolarisbutnotonHP-UX.showProcInfouses'dde'onHP-UX.gdbcanalsobeusedasadebugger.OnAIX,dbxisavailableaspartofthebos.debugfileset,whichwillneedtobeexplicitlyinstalled.Ifbos.debugisnotinstalled,eventheshowProcInfowouldnotrun.ThistoolisheavilyusedbyCICScustomerstocollectdebuggingdata.Debuggerscannotcatchtheexits.Notagoodpracticetocodeexitsinapplicationprograms.showProcInfo與dbx.showProcInfo40showProcInfo簡介showProcInfoisrunonCICSApplicationServersandcore.<TimeStamp>filestogetthecurrentstateoftheprocessandit'sthreads.Typically,showProcInfoisusefulduringaregionhang,howevercouldbeusedtocollectasnapshotoftheApplicationServerProcesses.showProcInfoisavailableonallplatforms.showProcInfo簡介showProcInfois41dbx簡介dbxcanbeusedtodebugaprogram.Setbreakpoints.Checkthestacktrace,etc.Aprogramcanberunthroughadbxsessionitselfordbxcanbeattachedtoanalreadyrunningprogram.Howtorunaprogramunderdbx?dbx<programpathname>Howtoattachdbxtoanalreadyrunningprogram.Identifytheprocessidoftheprogramusingtheps-efcommand.Attachtodbxusing,dbx-a<processid>.Iftheprogramsarecompiledwitha-goption,thedbxwillshowtheargumentnamesaswell,elseonlytheoffsetscanbeseen.Howtoseeacorefilethroughdbx?dbx<pathnameforprogram>coreOnSolarisandHP,couldusethe'file'commandtofindoutwhichprogramdumpedthecore.OnAIX,followingcommandcanbeusedforthesame:lquerypv-hcore6b0dbx簡介dbxcanbeusedtodebug42dbx命令(1)Iftheprogramisbeingrunindbx,thenweshouldtype'run'commandtostarttheprogram.Ifdbxisattachedtoanalreadyrunningprogram,thenoncethedbxisattached,theprogramisonahold.'continue'or'cont'commandshouldbeusedtocontinueprocessing.Breakpointscanbesetusingthecommands,stopin<symbolname>stopat<linenumber:filename>dbx命令(1)Iftheprogramisbein43dbx命令(2)clear-Toclearallthebreakpointsatagivenline.step(stepin)-Todebuginstructionbyinstruction.Willtakeyouinsidethesubroutinesaswell.stepout-Willtakeoutofthesubroutinetothemainprogramfromwherethisfunctionwascalled.next-Toexecutethenextinstruction.Willnotgointothefunctioncalls.cont-Runtheprogramuntilthenexthelp-Tolistalldbxcommandsandtheirhelpinformation.status-Showsthecurrentbreakpointsset.catch-Usedtocatchasignalindbxitselfbeforesendingitacrosstoprograms.list-Tolistthesourcecodeline.Effectiveonlyifcompiledwith-goption.dbx命令(2)clear-Toclearallt44dbx命令(3)ignore-dbxignoresthespecifiedsignal(defaultstoallsignals).where-showsthestacktrace.rerun-Runtheprogramonceagain.dump-Todumptheactivevariables.delete-Deletesthebreakpoints.sh-Usedtopassthecommandlinetotheshellforexecution.dbx命令(3)ignore-dbxignorest45用于調(diào)試的其它AIX/UNIX命令nm->Tocheckifasymbolisdefinedinalibraryoraprogram.

nm<pathnameoftheprogram>ldd(onsolarisandhp)->showsthedependenciesoftheobjects.ldd-rshowstherecursivedependency.dump-Hv->ShowstheobjectdependenciesonAIX.pseawww->Dumpstheenvironmentofaprocess.pstack->Solarisspecific.CouldbeusedlikeshowProcInfo.psva->Listsprocesseswithmemoryusage.vmstat<timeinterval><repeatinfo>

UsedtochecktheCPUusage.Eg.vmstat410.Runthevmstateveryfoursecondsandrepeatfor10times.errpt-a->DisplaystheOSrecordederrors.truss(AIXv5andsolaris):Usedtotracethecommands.用于調(diào)試的其它AIX/UNIX命令nm->Tochec46綜合分析綜合分析獲取客戶機(jī)IP地址使用環(huán)境變量“CICS_DEBUG_CPMI=1”,相關(guān)信息會被打印到console文件。在TXSeriesv5.1或者TXSeriesv以后實現(xiàn)。獲取客戶機(jī)IP地址使用環(huán)境變量“CICS_DEBUG_CPM48ASRA時生成CORE文件設(shè)置環(huán)境變量:

CICS_CORE_ON_ASRA=1ASRA時生成CORE文件設(shè)置環(huán)境變量:

CICS_CORE49檢查內(nèi)存等資源泄漏#例:RD:ServerMemCheckInterval=3600RD:ServermemCheckLimit=4Managememorygrowthchecking1.RD:ServerMemCheckIntervalTimeinsecondsbetweenmemorygrowthchecksDefaultis3600(0isdisabled)2.RD:ServermemCheckLimitNumberofconsecutivechecksbeforeCICSreportsgrowthDefaultis4(0meansdisabled)3.Messageswrittentoconsole檢查內(nèi)存等資源泄漏#例:50檢查內(nèi)存等資源泄漏-CICS_LEAKDEBUG環(huán)境變量1.Usedtocheckformemorygrowthandfiledescriptorleaks2.Setintheregions“environment”file3.Filecreatedforeachcicsasprocesscalledcicsas.<pid>4.Followingoptionsareavailable:LOGDIR=<Locationofthedirectorytostorereportfiles>MEM=<heap|taskprivate|taskshared>LANG=<c|cpp|cobol|ibmcob|ibmpli|java|cbmfnt|ALL>FILEDES=minlimit=<value>,maxlimit=<value>[,allowcore]TIMESTAMP=<ON|OFF>LEVEL=<1forentry/exit,2forfulldebug>TRAN=<Listoftransactions>#例:CICS_LEAKDEBUG="LOGDIR=/var/cics_regions/leakMEM=heapLANG=c,cpp,javaFILEDES=allowcore,minlimit=1000,maxlimit=1100TIMESTAMP=ONTRAN=SAMP"檢查內(nèi)存等資源泄漏-CICS_LEAKDEBUG環(huán)境變量51檢查內(nèi)存等資源泄漏–例#例:參數(shù)設(shè)置RD:ServerMemCheckInterval=3RD:ServerMemCheckLimit=3CICS_LEAKDEBUG="LOGDIR=c:\cicstmpMEM=heapLANG=c,cpp,javaTIMESTAMP=ONTRAN=CPMI,T001,T002"得到:c:\cicstmp\cicsas.leakdebug.2992.log#例:Log文件2007-01-1716:53:39[BL10972AL110842007-01-1716:53:39{2007-01-1716:53:39BE11084CPMID:\B\cics\srv\gettime.dll(LANGMETHOD=C)2007-01-1716:53:39AE111562007-01-1716:53:39}=722007-01-1716:53:41(LINK111762007-01-1716:53:41{2007-01-1716:53:41BE11176CPMID:\B\cics\srv\gettime(LANGMETHOD=C)2007-01-1716:53:41AE111802007-01-1716:53:41}=42007-01-1716:53:41LINK11180)=4檢查內(nèi)存等資源泄漏–例#例:參數(shù)設(shè)置52關(guān)于資源使用注意事項其它可能造成資源損失的原因某些操作系統(tǒng)缺陷可以導(dǎo)致內(nèi)存泄漏,所以要盡量打操作系統(tǒng)的補(bǔ)丁,打操作系統(tǒng)的補(bǔ)丁后一般要重新啟動操作系統(tǒng)。在程序中不通過EXECCICSRETURN或EXECCICSABEND就直接退出,可以導(dǎo)致RegionPool的泄漏。如果使用了操作的系統(tǒng)的malloc,open等,在CICS程序發(fā)生Abend時,可能導(dǎo)致資源的泄漏。使用UNIX的ps–el或者psva等命令可以觀察cicsas的size是不是在持續(xù)增長。關(guān)于資源使用注意事項其它可能造成資源損失的原因53交易掛起問題的分析步驟使用交易分類,確保cicsas不被占滿。使用cicsterm的CEMT觀察掛起的交易的ID和程序名,以及PID。使用showProcinfo,truss,dbx等觀察cicsas進(jìn)程的棧信息。如果正在執(zhí)行數(shù)據(jù)庫操作,使用數(shù)據(jù)庫工具,查找正在執(zhí)行的SQL語句等。交易掛起問題的分析步驟使用交易分類,確保cicsas不被占滿54使用Timeouts避免長時間等待EciTimeout(s)

ThetimeinsecondstowaitforaresponsefromtheCICSserver.(對CICS_TCP:)TD:Timeout(m)

Conversationaltimeoutvalue(mins)-Thisattributespecifies,inminutes,howlongCICSwaitsforterminalinputwhenrunningthistransaction.TD:DeadlockTimeout(s)

Thisattributespecifies,inseconds,howlongCICSallowsthetransactiontowaitwhenCICShasdetectedapossibledeadlock.(對PPC_TCP,PPC_GATEWAY:)CD:AllocationTimeout(s)

Specifieshowmanysecondsafront-endtransactionwaitsforaback-endtransactiontobestartedoveracommunicationslink.RD:XPRecvTimeout(s)。(對TXSeriesv4.2,使用CICS_XP_RECV_TIMEOUT)

ThisattributespecifiestheintervalinsecondsthatCICSwaitsbeforetimingoutComSU_XPRecvcalls.(對LOCAL_SNA:)CICS_SNA_RECEIVE_TIMEOUT(s)

在region的environment文件中設(shè)置此環(huán)境變量,格式如下:CICS_SNA_RECEIVE_TIMEOUT="SYS1,N1,SYS2,N2,SYS3,N3,SYS5,N5,...SYSn,Nn"使用Timeouts避免長時間等待EciTimeout(s55EciTimeoutECI超時后返回-6,服務(wù)器10

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論