DEB$XS10 - Verify SMF dump data vs RACF database records




Purpose:
Find out which RACF dataset and general resource profiles may have never been used and could be deleted. This program can be used on a weekly basis as well to see which RACF profiles are mainly referenced.



//DEADPROF   EXEC     PGM=DEB$XS10
//*
//*
//* PURPOSE:
//* VERFIFY SMF OFFLOADED FILE AGAINST OFFLOADED RACF DB.
//*
//* THIS PROGRAM READS A SMF DUMP FILES AND CHECKS EACH RESOURCE
//* PROFILE NAME FOUND AGAINST AN OFFLOADED RACF DB.
//* THE BASE RECORDS TYPE 0400 AND 0500 WILL BE USED.
//*
//*
//* - //LIST0400 PRINTS THE DATASET RESOURCE RECORDS "ASIS"
//* - //LIST0500 PRINTS THE GEN.RESOURCE RESOURCE RECORDS "ASIS"
//* - //ACINTENT PRINTS ALL RECORDS FOR THOSE NO PROFILE WAS FOUND
//*   IN THE FILES //IRRI0400 AND //IRRI0500
//* - //HITS0400 PRINTS THE NEVER USED DATASET PROFILES
//* - //HITS0500 PRINTS THE NEVER USED GEN. RESOURCE PROFILES
//*
//* THE SO CALLED 'NEVER USED PROFILES' STATISTICS PERTAIN ONLY
//* TO THE LAST USED SMF DUMP FILE.  AS USER WOULD HAVE TO USE
//* A SMF DUMP FILE WHICH GOES OF X-AMOUNT OF MONTHS TO GET A TRUE
//* PICTURE BEFORE DELETING ANY RACF RESOURCE PROFILES.
//*
//*
//*
//STEPLIB      DD       DISP=SHR,DSN=RA2002.LINKLIB     <- CHANGE
//*
//* INPUT FILES: OFFLOADED RACF DB RECORD TYPES 0400/0500
//*
//IRRI0400     DD      DISP=SHR,DSN=YOUR.IRRI0400.VB(0) <- CHANGE
//IRRI0500     DD      DISP=SHR,DSN=YOUR.IRRI0500.VB(0) <- CHANGE
//*
//* PRINT FILES: RESOURCE PROFILE NAMES "ASIS"
//*
//LIST0400     DD       SYSOUT=*
//LIST0500     DD       SYSOUT=*
//*
//* PRINT FILES: NUMBER OF HITS PER PROFILE
//*
//HITS0400     DD       SYSOUT=*
//HITS0500     DD       SYSOUT=*
//*
//ACINTENT     DD       SYSOUT=*
//*
//* CHECK SMF INPUT FILE AGAINST IRRIXXXX FILES ABOVE
//*
//SORTIN       DD       DISP=SHR,DSN=YOUR.SMF.FILE      <- CHANGE
//SYSOUT       DD       SYSOUT=*
//SYSUDUMP     DD       SYSOUT=*
//SORTCNTL     DD       *
 SORT FIELDS=COPY
 INCLUDE COND=(6,1,CH,EQ,X'50')
 DEBUG         NOABEND
 OPTION        VLSHRT
//$ORTPARM     DD       *
NORC16
//*
//SORTWK01     DD       UNIT=SYSDA,SPACE=(CYL,(30,30))  <- CHANGE
//SORTWK02     DD       UNIT=SYSDA,SPACE=(CYL,(30,30))  <- CHANGE
//SORTWK03     DD       UNIT=SYSDA,SPACE=(CYL,(30,30))  <- CHANGE
//SORTWK04     DD       UNIT=SYSDA,SPACE=(CYL,(30,30))  <- CHANGE
//*
//


Output Samples:

//HITS0400     DD       SYSOUT=*




//HITS0500     DD       SYSOUT=*



//ACINTENT     DD       SYSOUT=*