Microsoft SNA Server provides extensive tracing capabilities at both the
server and client side to help diagnose problems. On the server side, you
can use the SNATRACE tool to trace SNA Server and Win32 application
activity. You can enable Windows 3.x client tracing by following the steps
in the Enabling SNA Server Client Tracing section below. Client tracing is
useful in diagnosing client-to-server connection problems or Windows 3.x
SNA Server application problems. Note that client tracing cannot be used to
capture server-to-host SNA Server or link level traffic; these types of
traces must be captured at the server.
SNA SERVER CLIENT TRACING TYPES
Following are descriptions of the types of client tracing provided by SNA
Server, along with a descriptions of each associated WIN.INI entry:
Internal Tracing
Internal tracing traces code execution of SNA Server components and is
intended for SNA Server development. This type of tracing is useful to
diagnose:
- Client connection failures in communication (546 errors for example)
over any client-server transport supported by SNA Server. If the SNA
Server client software encounters an underlying network or operating
system error, the error code is logged in the internal trace file.
- Problems automatically loading a invokable transaction program (auto-
started APPC or CPIC invokable TP).
- Abnormal terminations of clients (general protection (GP) faults or
application exceptions).
WIN.INI Entries Used To Control Internal Tracing:
InternalTraceLevel: [0-8] Level of detail. The most detailed level is 0.
InternalTraceFile1, InternalTraceFile2: ASCII files that store internal
trace information. If only InternalTraceFile1 is specified, the trace
file will grow indefinitely. If both trace files are listed, each file
will grow to the FlipLength (see below) before wrapping to the next
file.
TraceFlushing: [OFF/ON] Controls whether or not trace information is
immediately flushed to the trace file. When debugging a problem
involving a hang condition, this entry should be set to ON to ensure
that the most recent trace event is logged to the trace file.
FlipLength: [size in bytes] Controls how large each SNA Server trace
file can grow (default: 250,000). If two trace file names are specified,
SNA Server traces wrap between two trace files so the hard disk doesn't
fill up.
API Tracing
API tracing traces application program interfaces (APIs) supported by SNA
Server, in call/return format. You can analyze these traces using the
appropriate SNA Server API programmer's guide. This type of tracing is
useful in diagnosing:
- User-written applications which use the SNA Server APIs.
- 5250 emulation problems (which use APPC).
SNA Server Trace Entries Used To Control API Tracing:
APPCTraceState: [OFF/ON] Enables APPC API tracing.
CPICTraceState: [OFF/ON] Enables CPIC API tracing.
CSVTraceState: [OFF/ON] Enables Common Service Verb API tracing.
RUITraceState: [OFF/ON] Enables LUA/RUI API tracing.
SLITraceState: [OFF/ON] Enables LUA/SLI API tracing.
APITraceFile1, APITraceFile2: ASCII files that store API trace information.
If only APITraceFile1 is specified, the trace file will grow indefinitely.
If both trace files are listed, each file will grow to the FlipLength (see
Internal Tracing section above) before wrapping to the next file.
Message Tracing
Message tracing traces the internal message flow between the SNA Server
client and the server. This type of trace is used by SNA Server development
to diagnose:
- 3270 emulator problems communicating with the server.
- APPC or CPIC application problems communicating with the server.
SNA Server Trace Entries Used To Control Message Tracing:
FMITraceState: [OFF/ON] Controls 3270 Emulator Interface (EIS) message
tracing, used by 3270 emulators.
PVITraceState: [OFF/ON] Controls LU6.2 message tracing which flows between
the client and server.
MessageTraceFile1, MessageTraceFile2: ASCII files to store message trace
information. If only MessageTraceFile1 is specified, the trace file will
grow indefinitely. If both trace files are listed, each file will grow to
the FlipLength (see Internal Tracing section above) before wrapping to the
next file.
ENABLING SNA SERVER CLIENT TRACING
To enable SNA Server client tracing on a Windows 3.x client computer:
- Stop the SNA Server for Windows client software.
- Make backup copies of the following files on your client workstation:
<snaroot>\WNAP.EXE -> WNAP.ORG
<winroot>\SYSTEM\WDMOD.DLL -> WDMOD.ORG
<winroot>\SYSTEM\LMCLI.DLL -> LMCLI.ORG (MS network/named pipes)
<winroot>\SYSTEM\NWCLI.DLL -> NWCLI.ORG (Netware ipx/spx)
<winroot>\SYSTEM\BVCLI.DLL -> BVCLI.ORG (Banyan IP)
<winroot>\SYSTEM\IPCLI.DLL -> IPCLI.ORG (TCP/IP sockets)
- Copy the following traced versions of the client components from your
SNA Server CD-ROM to your client workstation:
\clients\win3x\trace\WNAP.EXE -> <snaroot>\WNAP.EXE
\clients\win3x\trace\WDMOD.DLL -> <winroot>\SYSTEM\WDMOD.DLL
\clients\win3x\trace\LMCLI.DLL -> <winroot>\SYSTEM\LMCLI.DLL
\clients\win3x\trace\NWCLI.DLL -> <winroot>\SYSTEM\NWCLI.DLL
\clients\win3x\trace\BVCLI.DLL -> <winroot>\SYSTEM\BVCLI.DLL
\clients\win3x\trace\IPCLI.DLL -> <winroot>\SYSTEM\IPCLI.DLL
- Add the following entries to your <winroot>\WIN.INI file, under the
[WNAP] section. Any combination of tracing is supported. Not all entries
need to be present in WIN.INI, only those necessary to capture the
desired traces.
[WNAP]
; Entries which control Internal tracing:
InternalMessageTraceState=ON
InternalTraceFile1=C:\NAPINT1.TRC
InternalTraceFile2=C:\NAPINT2.TRC
InternalTraceLevel=2
; Entries that control API tracing:
APPCTraceState=ON
CPICTraceState=ON
CSVTraceState=ON
RUITraceState=ON
SLITraceState=ON
APITraceFile1=C:\API1.TRC
APITraceFile2=C:\API2.TRC
; Entries that control message tracing:
FMITraceState=ON
PVITraceState=ON
MessageTraceFile1=C:\NAPMSG1.TRC
MessageTraceFile2=C:\NAPMSG2.TRC
; Other general tracing entries:
FlipLength=250000
TraceFlushing=ON
- Restart WNAP.EXE by choosing Run from the File menu of Program Manager.
- Once the problem occurs, stop the SNA application and close the SNA
Server client icon (WNAP.EXE).
Be sure to rename the client files to the original versions to disable
tracing. There is no need to remove the WIN.INI entries if you use the
original client files; they will be ignored.