Trace file enables EASYCOM carried out operations to be displayed on client or server side. AS/400 EASYCOM server processes elementary requests applied to tables or procedures.
It receives a process request from the network and returns a response.
The requests and responses are recorded in a trace file, it can be used as basis to analyze data flow between client and server.
Lines starting with << indicates client request.
Lines starting with >> indicates AS/400’s answer.
<<EACopen(EASYCOM/SP_CUST,4194309,-1) ß Requête.
9 Fields, 0 key fields
EAC_NO_CVT - mode=
>>Ret=1; Err=0; Msg=; Int=0 ß Réponse.
In AS/400 trace, if time option was selected, all requests and responses are time in hh:mm:ss.ms format.
<<15:48:45.566: EACread(1,p(2275),91,34144281,(null),0,p(100))
In response, data "Clk=x" indicates AS/400 CPU time spended to process the request.
.
>>15:48:45.574: Clk=8, Len=619; Ret=5; Err=0; Msg=; Int=
Trace file header (common to all sessions)
This trace file part is always the same for all EASYCOM sessions.
Time is : 03/27/2000 - 17:22:10
Easycom Server Version is : 4.5712, Link is TCP/IP
Client license is : D$WINDEV10 , Easycom Library is : EASYCOM
JobName=ALBATROS, User=QPGMR , QCCSID=297 Heart Beat freq :10
Easycom Log File TRACE/SR, level 1
------------------------------------------------------
>>Ret=1; Err=0; Msg=; Int=0
<<RTV_AS_VER(p(4))
>>Ret=4; Err=0; Msg=; Int=0
<<WriteTableEBCDI(49 42 4D 43 43 53 49 44 20 30 20 31 32 35 32 00 00 00 00 00 ...(256))
Build Table from CCSID:0 to 1252
open IBMCCSID01252, IBMCCSID000000000100
<<WriteTableASCII(49 42 4D 43 43 53 49 44 20 31 32 35 32 20 30 00 00 00 00 00 ...(256))
Build Table from CCSID:1252 to 0
open IBMCCSID00000, IBMCCSID012520000100
<<ReadTableASCII(p(256))
>>Ret=0; Err=0; Msg=; Int=
<<ReadTableEBCDIC(p(256))
>>Ret=0; Err=0; Msg=; Int=0
<<EACSqlDeclare(2A 45 41 43 20 43 56 54 20 4E 4F 00 ,12)
Statement:*EAC CVT NO
>>Ret=1; Err=0; Msg=; Int=0
<<EACSqlBegin()
>>Ret=0; Err=0; Msg=; Int=0
Physical file opening trace
<<EACopen(EASYCOM/SP_CUST,4194309,-1)
9 Fields, 0 key fields
EAC_NO_CVT - mode=rr+
>>Ret=1; Err=0; Msg=; Int=
<<EACgetdesc(1,p(65000),65000,939786240,(null))
>>Ret=9; Err=0; Msg=; Int=
Logical file opening trace
<<EACopen(EASYCOM/SP_CUST_UN,4194309,-1)
LF with 1 Data Members, 1 Record Formats
9 Fields, 1 key fields
EAC_NO_CVT - mode=rr+
>>Ret=2; Err=0; Msg=; Int=
<<EACgetdesc(2,p(65000),65000,939786240,(null))
>>Ret=9; Err=0; Msg=; Int=
File records reading trace
<<EACread(2,p(816),102,34144264,(null),0,p(32))
VERB=_EAC_NEXT LOCK=OFF RECS=8 FILE=EASYCOM/SP_CUST_UN
RRN=2 RRN=4 RRN=5 RRN=6 RRN=7 RRN=8 RRN=9 RRN=10
>>Ret=8; Err=0; Msg=; Int=0
Read operation type is indicated by « VERB=
Where xxxx may be :
FIRST, NEXT, PREV, LAST, KEY_EQ, KEY_GE, KET_GT, …
"LOCK= indicates if operation is carried out with or without record locks.
"RECS= indicates maximum records number requested for the response.
This number is directly linked to "Records= data" in the "Easycom.ini" file "Buffers section" on client PC.
"RRN= indicates the records read number.
In response, "Ret=n" indicates the records number actually returned, to the read request.
If the read operation fails because of an input/output error, the message is stored in the trace, and the records read are returned.
<<EACread(2,p(3570),102,34144291,(null),0,p(140))
VERB=_EAC_NEXT LOCK=OFF RECS=35 FILE=EASYCOM/SP_CUST_UN
RRN=11 RRN=12 RRN=13 RRN=14 RRN=15 RRN=16 RRN=17 RRN=18 RRN=19 RRN=20 RRN=54 +...
... RRN=55 RRN=56
**SIGIO** Msg:CPF5001
>>Ret=13; Err=5001; Msg=CPF5001; Int=0
In this example, 35 records are requested, but only 13 are available until file end.
To obtain the detailed error message, use DSPMSGD command.
SQL request opening trace
<<EACopen(SELECT * from SP_CUST where LASTNAME>'M',4194309,-1)
Statement : SELECT * from SP_CUST where LASTNAME>'M'
Cursor 0
>>Ret=2; Err=0; Msg=; Int=
<<EACgetdesc(2,p(65000),65000,939786240,(null))
>>Ret=9; Err=0; Msg=; Int=