Generating CRM Gateway Log Files

In this section:

To ensure data integrity, a transaction manager maintains a transaction log. Each log entry tracks the state of a two-phase commit sequence. When two transaction managers are involved, the logs of both managers must be synchronized. In the SNA protocol, two transaction managers synchronize their logs by exchanging and comparing log names when a link is started or restarted. In addition, the CRM gateway maintains its own transaction logs.


Top of page

x
CRM Gateway Log Files

CRM gateway log files are stored under the application directory of the CRM. The location of these files is determined by the setting of the APPDIR environment variable. APPDIR can specify a high-level qualifier of the log data set in the MVS environment.

The CRM gateway creates two types of log files, restart logs and blob logs. Both can be viewed using the CRMLOGS utility.


Top of page

x
Restart Log File

The restart log stores a single entry for each link. Each entry contains the log names for the CRM gateway and the back-end system for one link. These names are used to perform log comparisons between the two. The file name is described as follows:

CRM.<crm name>.RSTRTLOG

Note: On an MVS system, there is a high-level qualifier preceding the file name.


Top of page

x
Blob Log File

The blob log file maintains the state of the two-phase transmit protocol for each active transaction. The file name is described as follows:

CRM.<crm name>.BLOBLOG

Note: On an MVS system, there is a high-level qualifier preceding the file name.


Top of page

x
Viewing CRM Gateway Log Files

Use the CRMLOGS command to view the contents of the CRM restart log and blob log. This is useful if in-flight transactions have been stopped and need to be recovered.



x
Procedure: How to View CRM Gateway Log Files

To view the CRM gateway log files in an MVS environment, you must use a JCL script. A sample JCL script is included with your iWay CRM gateway installation.

To view the CRM gateway log files:

  1. Use the commands shown in the following table to customize the sample JCL script.

    Command Name

    Description

    SET LOGSCMD

    Sets the CRMLOGS command line parameters.

    SET OBJLIB

    Indicates the name of the PDSE library where the CRMLOGS executable is installed.

    SET RUNOPTS

    Specifies the optional runtime operands for the Language Environment (LE). This is usually used for debugging. See your system administrator for more information.

    SET DATA

    Indicates the data set containing the ENVFILE.

    SET ENVFILE

    Indicates the name of the PDS member that contains the environment variables for the CRMLOGS. A sample member, ENV, is delivered with your product.

    SET RUNOPTS

    Specifies the optional runtime operands for the Language Environment (LE). This is usually used for debugging. See your system administrator for more information if this option is used.

    SET SIZE

    Defines the region size for the running CRMLOGS task.

    SET ENV

    Indicates the ENVFILE DD name. This value is pre-set.

    SET CEE

    Specifies the high-level qualifier for the LE run-time library.

    Note: Uncomment the SET CEE line and tailor the STEPLIB concatenation if these libraries are not in your system link library concatenation.

     SET CBC 

    Specifies the high-level qualifier for the C/C++ runtime library.

    Note: Uncomment the SET CBC line and tailor the STEPLIB concatenation if these libraries are not in your system link library concatenation.

  2. Run a CRMLOGS job using a JCL script that is written for your system.

    The following syntax shows a JCL script for the CRMLOGS command.

    //*****************************************************************
    //*  THIS JOB IS USED TO CHECK THE RECOVERY LOGS FOR              *
    //*  OUTSTANDING TRANSACTION DATA.                               *
    //***************************************************************
    //*  YOU MUST SET THE ENVIRONMENT VARIABLES NEEDED BY CRMLOGS     *
    //***************************************************************
    //***************************************************************
    //*  LOGSCMD IS USED TO SET THE DESIRED CRM NAME                  *
    //*  OBJLIB IS THE LOAD LIBRARY CONTAINING THE PROGRAM OBJECTS    *
    //*  RUNOPTS SETS ANY DESIRED LE RUNTIME OPTIONS (OPTIONAL)       *
    //*  DATA IS THE DATA SET THAT CONTAINS THE ENVIRONMENT VARIABLES *
    //*  ENVFILE NAMES THE MEMBER THAT CONTAINS THE ENVIRONMENT VARS  *
    //*  SIZE SETS THE REGION SIZE FOR THE CRM PROCESS                *
    //*  ENV SETS THE ENVIRONMENT VARIABLES DD NAME                   *
    //*  TAILOR YOUR JCL FOR THE BELOW IF THESE LIBRARIES ARE NOT     *
    //*  IN YOUR SYSTEM LINK LOAD LIBRARY CONCATENATION               *
    //*  CEE IS THE HLQ FOR THE LE RUNTIME LIBRARY                    *
    //*  CBC IS THE HLQ FOR THE C/C++ RUNTIME LIBRARY                 *
    //***************************************************************
    //  SET LOGSCMD=<crm name>
    //  SET OBJLIB=
    //  SET DATA=
    //  SET ENVFILE=
    //  SET RUNOPTS=
    //  SET SIZE=10M
    //  SET ENV='ENVAR("_CEE_ENVFILE=DD:ENV")'
    //* SET CEE=CEE,CBC=CBC
    //CRMLOGS  EXEC  PGM=CRMLOGS,REGION=&SIZE,
    //  PARM='POSIX(ON) &ENV &RUNOPTS/&SNAGRP'
    //STEPLIB  DD  DSN=&OBJLIB,DISP=SHR
    //*        DD  DSN=&CEE..SCEERUN,DISP=SHR
    //*        DD  DSN=&CBC..SCLBDLL,DISP=SHR
    //MSGFILE  DD  SYSOUT=*
    //SYSPRINT DD  SYSOUT=*
    //ENV      DD  DSN=&DATA(ENVFILE),DISP=SHR
    //


iWay Software