Has anyone set up something that will access the detailed Health Check information that can be found when you access SDSF and select the individual health check entry. We are specifically interested in getting detailed information about CSV_APF_EXISTS and getting the datasets names, so we can inform the proper groups.
CHECK(IBMCSV,CSV_APF_EXISTS) SYSPLEX: CSXPLEX SYSTEM: SYSA START TIME: 01/11/2017 13:19:57.279488 CHECK DATE: 20071120 CHECK SEVERITY: LOW CHECK PARM: MIGRATEDOK(SYSTEM) CSVH0955I A problem was found with each APF list entry displayed. VOLUME DSNAME ERROR *SMS* DB2.CA.R1614196.CDBALOAD Allocation failure *SMS* DB2.DB27.DSNLOAD DS is alias *SMS* DB2.IBM.OPTIMR.SCACLOAD Allocation failure CATA21 LNKLST.MQ.V8R0M0.SYSA.SCSQANLE DS not found CATA21 LNKLST.MQ.V8R0M0.SYSA.SCSQAUTH DS not found CATA21 LNKLST.MQ.V8R0M0.SYSA.SCSQMVR1 DS not found CATA21 LPALST.MQ.V7R0M1.SYSA.SCSQLINK DS not found
We do not have samples ready for you to try.
But I was looking at the IBM site and found a macro that can be called from a TSO/E REXX program to manage checks that are currently registered with IBM® Health Checker For z/OS®. If you are interested look at it in this IBM URL link:
Share with he rest of the Community your results using this IBM code.
Hello Cesar, the macros are for creating and running your own Health Checks. I am trying to get to the data that is displayed if you go to SDSF and select a CK entry that has an exception. My goal was to recognize the HZS* message and issue a line command or start a Tso session that would allow me to capture the detail in the actual health check.
Example in IBM health check IBMCSV,CSV_APF_EXISTS. When there is an exception a message is create in the log.
This is what comes out in the syslog:
HZS0001I CHECK(IBMCSV,CSV_APF_EXISTS): 152
CSVH0957E Problem(s) were found with data sets in the APF list.
But when you select the entry for the health check there is additional information that does not appear in the log to capture:
COMMAND INPUT ===> SCROLL ===> CSR
TOP OF DATA *********************************
SYSPLEX: TSTPLEX SYSTEM: SYSS
START TIME: 01/18/2017 08:59:36.769413
CHECK DATE: 20071120 CHECK SEVERITY: LOW
CHECK PARM: MIGRATEDOK(SYSTEM)
CSVH0955I A problem was found with each APF list entry displayed.
This is the information I would like to capture.
VOLUME DSNAME ERROR
CATJ22 LPALST.SYSS.OEMMODS DS not found
DB2ST1 ORACLE.AM4CICS.TEST.LOADLIB DS not found
DB2ST1 ORACLE.GISA.LOADLIB DS not found
DB2ST1 ORACLE.MECD.LOADLIB DS not found
DB2ST1 ORACLE.PRMT.LOADLIB DS not found
DB2ST1 ORACLE.RARD.LOADLIB DS not found
DB2ST1 ORACLE.TCID.LOADLIB DS not found
SMS SGS.IDF5004.LINKLIB Allocation failure
ZOSR11 ZOS22.SYS1.LINKLIB DS not found
Low Severity Exception *
I would like to capture the CSVH0955I message and the dataset names and put them in an email or ticket.
As I was doing some recreation in our labs last week when this post came in I came across with similar results you are reporting when using modify commands against the IBM Health Check Address Space. This is I do see the messages you are looking for in the SYSLOG/OPSLOG but no detailed data is posted that is needed for further email processing.
The reason why I pointed out to the IBM provided HZSCHECK macro was to see if a call would return the data you are looking for. I agree it seems to be more to manage the Health Checkers that are currently registered.
I think you should ask IBM about this macro and see if they have another way to get to the detail info.
Or if there is an option on the modify commands they provide to display the detail info in the SYSLOG so CA OPS/MVS AOF rule processing can fire once the date is available to us in the OPSLOG browse.
Another possibility, in case data is available via Health Check panels, is using the External Product Interface (EPI).
Read more about it in the overview section of the manuals Chris:
Hope this give you some directions Chris.
When trying the IBM utility HZSPRNT that Erik is sharing with the user community be aware that you might need to contact your Security Admin to grant access to profiles controlling the use of it. In my case I am seeing a return code 1200 when running it. I have found messages indicating a violation trying to access a query protected resource under the XFACILITY Resource Class. Look at this IBM URL link for more info about this utility as well return codes:
Under the return code 1200 there is a link to another page that should help your Security Admin to setup security:
Also there is a sample on how the report produced in the SYSOUT DD statement looks like.
Hope this all helps.
We let OPS/MVS start the HZSPRNT utility in batch passing the Health Check concerned as a variable.
The batch job then mails the output to us.
We only trap HZS*E messages in a message rule, and then after filtering out some error messages we don't need, we start a batch job passing the check as a variable:
do Check = translate(word(msg.text.1,2),' ',':') address OSF "OI P(CTMFORCJ) ARG(OP POP211 "Check")" end
And in the batch job:
//HZSPRINT EXEC PGM=HZSPRNT,// PARM=('%%Check', // 'EXCEPTIONS')
//SYSOUT DD DISP=(,CATLG),DSN=PBAT.DP.POP211.HZSPRINT.DATA,// SPACE=(TRK,(5,5),RLSE), // DCB=(LRECL=256)
You could add a rexx to the batch job to get only the data from the output you are interested in, we just mail the whole output.
Many thanks for sharing Erik