Troubleshooting zHyperLink
There are a few ways you can troubleshoot zHyperLink performance issues.
Issue the command:
D SMS,DSNAME(dsname),STATS(ZHLWRITE) to display
zHyperLink write statistics, where dsname is the name of the data set that is
used for log writes.
D SMS,DSNAME,STATS(ZHLWRITE) Start of Report
DATA SET VICY.MQ57.LOGCOPY1.DS01.DATA
STATISTICS Since 04/08/2024 10:51:57.096121
SUMMARY
TOTAL %SYNC -------------%ASYNC---------------
WRITE REQUESTS WRITES SKIP LNKBSY ¬EST MISC DISABL
1146 4.36 79.66 0.00 0.08 0.00 4.01
-------%ASYNC-------
MISS DELAY DUAL
11.86 0.00 0.00
DEVICE STATISTICS
TOTAL %SYNC ---------------%ASYNC---------------------
SSID DEVNO WRITES WRITES SKIP LNKBSY EST MISC MISS DELAY
5144 0619C 2288 3.05 39.90 0.00 0.04 16.21 40.77 0.00
D SMS,DSNAME,STATS(ZHLWRITE) End of Report
The preceding output shows what percentage of writes were completed synchronously, and what percentage of writes were completed asynchronously, broken down by reason for not using synchronous writes.
The output displays:
- SKIP
- Percentage of zHyperLink writes for which zHyperLink was not attempted due to a previous zHyperLink failure to the same track that is being written to.
- LINKBSY
- Percentage of zHyperLink writes that encountered a busy link condition.
- EST
- Percentage of zHyperLink writes where zHyperLink write access was not established.
- MISC
- Percentage of zHyperLink writes that were completed asynchronously due to other reasons.
- MISS
- Percentage of zHyperLink writes that were completed asynchronously due to a cache miss.
- DELAY
- Percentage of zHyperLink writes that were completed asynchronously due to an operation delay.
- DISABL
- The percentage of zHyperLink writes where zHyperLink was not enabled.
- DUAL
- Percentage of zHyperLink writes that were completed asynchronously due to the other data set in a dual logging request.
See Appendix B of Getting Started with IBM zHyperLink for z/OS for more information and various commands and processes for problem determination with zHyperLink.
Finding the serial number of the device
You can find the serial number and SCU number by running the following
command:
DS QD,nnnn where nnnn is
the device number. For example:
DS QD,9200
IEE459I 07.04.45 DEVSERV QDASD 742
UNIT VOLSER SCUTYPE DEVTYPE CYL SSID SCU-SERIAL DEV-SERIAL EFC
09200 CONCD1 2107981 2107900 1113 0230 0175-FCC41 0175-FCC41 *OK
**** 1 DEVICE(S) MET THE SELECTION CRITERIA
**** 0 DEVICE(S) FAILED EXTENDED FUNCTION CHECKING
Use the output of this command to get the SCU-SERIAL number required for displaying the
number of zHyperLink sessions. Sample DS QD,scu-serial,ZHL command
DS QD,MACH=0175-FCC41,ZHL
IEE459I 04.10.26 DEVSERV QDASD 419
UNIT VOLSER SCUTYPE DEVTYPE CYL SSID SCU-SERIAL DEV-SERIAL EFC
09200 CONCD1 2107981 2107900 1113 0230 0175-FCC41 0175-FCC41 *OK
ZHYPERLINK WRITE TOKENS ASSIGNED
TOKEN DATE TIME UNIT DATA SET NAME
00AD 07/07/21 15:10 09C16 DB2BL.D2B1.LOGCOPY2.DS02.DATA
01AE 07/07/21 15:10 09B96 DB2BL.D2B1.LOGCOPY1.DS02.DATA
02AF 07/07/21 15:10 09B96 DB2BL.D2B2.LOGCOPY1.DS02.DATA
03B0 07/07/21 15:10 09639 DB2BL.D2B2.LOGCOPY2.DS02.DATA
**** 4 WRITE TOKEN(S) MET THE SELECTION CRITERIA
**** 1 DEVICE(S) MET THE SELECTION CRITERIA
**** 0 DEVICE(S) FAILED EXTENDED FUNCTION CHECKING
Each token represents a connected zHyperLink session, showing which data sets are using
zHyperLink.