Create IMS log reader capture CAB file - connect_cdc_sqdata - Latest

Connect CDC (SQData) Change Data Capture

Product type
Software
Portfolio
Integrate
Product family
Connect
Product
Connect > Connect CDC (SQData)
Version
Latest
Language
English
Product name
Connect CDC (SQData)
Title
Connect CDC (SQData) Change Data Capture
Copyright
2024
First publish date
2000
Last updated
2024-11-25
Published on
2024-11-25T15:05:48.570404

The IMS Log Reader Capture Agent configuration (.cab) file is created and maintained by the SQDCONF utility with JCL similar to sample member SQDCONIC included in the distribution. While this section focuses primarily on the initial configuration of the Capture Agent, sequences of SQDCONF commands to create and configure the capture agent should be saved both for migration to other operating environments and for recovery. See SQDCONF Utility Reference for a full explanation of each command, their respective parameters and the utility's operational considerations.

Syntax
create <cab_file_name>
        --type=IMS
        --zlog=<log_stream_name>
Keyword and Parameter Descriptions
Keyword Description
<cab_file_name> This is where the configuration file, including its path is first created. There is only one CAB file per Capture Agent. In our example /home/sqdata/imscdc.cab
--type=<type> Agent type, in the case of the IMS Log Reader Capture, is IMS.
--zlog=<log_stream_file> The default z/OS System LogStream used for all IMS Subsystems that do not have their own dedicated System LogStream. The LogStream created previously in our example 'SQDATA.IMSCDC.LOG1'.
The configuration file must be updated by adding an entry for each IMS System to be captured using the add command.
Note: only one command can be executed at a time. Precisely highly recommends keeping a Recover/Recreate configuration file Job available should circumstances require recovery.
Syntax
add <cab_file_name>
        --ssid=<ims_system_id>
        --zlog=<log_stream_name>
Keyword and Parameter Descriptions
Keyword Description
<cab_file_name> Must be specified and must match the name specified in a previous create command.
--ssid=<ims_system_id> The IMS System ID. In our example IMS01
--zlog=<log_stream_file> The default z/OS System LogStream used for all IMS Subsystems that do not have their own dedicated System LogStream. The LogStream created previously in our example 'SQDATA.IMSCDC.LOG1'.

Example

In the following example the Capture CAB file is created and two IMS subsystems are configured for capture. The final step executes the display command to output the current content of the configuration file:
//SQDCONIC JOB 1,MSGLEVEL=(1,1),MSGCLASS=H,NOTIFY=&SYSUID              
      //*                                                                    
      //*--------------------------------------------------------------------
      //*   Create CAB File for IMS Log Reader Capture Agent                    
      //*--------------------------------------------------------------------
      //*   Note: 1) Parameter Keywords Must be Entered in lower case        
      //*                                                                    
      //*         2) Parameters Values are Case Sensitive                    
      //*                                                                    
      //*   Steps: 1) (optional) Delete the existing Capture CAB File        
      //*          2) Create a new Capture CAB File                          
      //*          3) Add IMS Subsystem(s) to the new Capture CAB File      
      //*          4) Display the contents of the new CAB File              
      //*                                                                    
      //*********************************************************************
      //*                                                                    
      //JOBLIB   DD DISP=SHR,DSN=SQDATA.V400.LOADLIB                        
      //*                                                                    
      //*-------------------------------------------                        
      //*   Optional - Delete existing CAB File                              
      //*-------------------------------------------                        
      //*DELETE   EXEC PGM=IEFBR14                                          
      //*SYSPRINT DD SYSOUT=*                                                
      //*CONFFILE DD PATHDISP=(DELETE,DELETE),                              
      //*         PATH='/home/sqdata/imscdc.cab                              
      //*                                                                    
      //*--------------------------------------------------------------------
      //*   Create a New Capture CAB File                                    
      //*   --type: Must be IMS                                              
      //*   --zlog: Specifies a single default z/OS LogStream used as a    
      //*           store for subsystems that don't use a dedicated one      
      //*--------------------------------------------------------------------
      //CRCONF   EXEC PGM=SQDCONF                                            
      //SYSPRINT DD SYSOUT=*                                                
      //SYSOUT   DD SYSOUT=*                                                
      //SQDPARMS DD *                                                        
      create /home/sqdata/imscdc/imscdc.cab                                        
      --type=IMS                                                        
      --zlog='SQDATA.IMSCDC.LOG1'                                        
      /*                                                                    
      //*--------------------------------------------------------------------
      //*   Add Subsystem(s) to the Capture CAB File                        
      //*   --ssid or --key: Specifies the IMS subsystem ID                  
      //*   --zlog: Specifies a LogStream for the subsystem (overrides the  
      //*           CAB default zlog)                                        
      //*                                                                    
      //*   Add additional Subsystems later via Batch Job (a subset of this  
      //*   Job) or via the ISPF Interface                                  
      //*--------------------------------------------------------------------
      //*---------------------------------------------------                
      //*   Capture Subsystem IVP1 to a specific LogStream.                
      //*   Added subsystems are active by default.                        
      //*---------------------------------------------------                
      //ADD1  EXEC PGM=SQDCONF                                              
      //SYSPRINT DD SYSOUT=*                                                
      //SYSOUT   DD SYSOUT=*                                                
      //SQDPARMS DD *                                                        
      add /home/sqdata/imscdc/imscdc.cab                                  
      --zlog='SQDATA.IMSCDC.LOG.IVP1'                                    
      --ssid=IVP1                                                        
      /*                                                                    
      //*---------------------------------------------------                
      //*  Capture Subsystem IVP2 to the default LogStream.                
      //*---------------------------------------------------                
      //ADD2  EXEC PGM=SQDCONF                                              
      //SYSPRINT DD SYSOUT=*                                                
      //SYSOUT   DD SYSOUT=*                                                
      //SQDPARMS DD *                                                        \
      add /home/sqdata/imscdc/imscdc.cab                                  
      --ssid=IVP2                                        
      /*                                                      
      //*----------------------------------------------------
      //*  Display the Contents of the Capture CAB File      
      //*----------------------------------------------------
      //DISPLAY  EXEC PGM=SQDCONF                            
      //SYSPRINT DD SYSOUT=*                                  
      //SYSOUT   DD SYSOUT=*                                  
      //SQDPARMS DD *                                        
      display /home/sqdata/imscdc.cab                      
      /*                                                      
The sqdconf create command defines the location of the configuration file. Once created, this command should never be run again unless you want to destroy and recreate the Capture agent. Deleting the CAB file will cause the current position in the IMS Log to be lost and Capture will start from the current time. A CAB file cannot be modified or deleted while the Capture is running and attempting to create a new one with the same name will fail. Once a CAB file has been created, only changes in the form of add and modify commands can be used. When adding a new subsystems, capture will start from the current time, unless an LSN is specified. The sqdconf apply function used on other platforms does not apply to the IMS Log Reader Capture on zOS and all changes made to the CAB file take effect immediately when the Capture agent JOB is re-started.

Captured data can be written to multiple LogStreams allowing a one-to-many relationship between Publishers and downstream Engines, as seen later in an example of the sqdconf modify command. Directory path references to [home] and a "user" named [sqdata] can be modified to conform to the operating environment but must match the zFS Directories previously created.