wasted the customer and IBM DB2 Support's time.)
Thanks to Bart Steegmans, IBM DB2 Support, USA.
Change 31.280 MXG variable IOTMNOCA=SMF30AIC-IOTMDASD now correctly
VMAC30 compares the DASD connect time captured in SMF30AIS with
Jan 1, 2014 the sum of IOTM from the DASD DD segments; previously it
incorrectly used IOTMTOTL in the equation.
Values from minus 20 seconds to plus 20 seconds are found
occasionally, where minus 20 means that the DD segment
IOTM was greater than the SMF30AIC DASD connect time.
====== Changes thru 31.278 were in MXG 31.09 dated Dec 30, 2013=========
Change 31.278 -Support for DB2 Trace IFCID=377 (PSEUDO DELETE CLEANUP).
EX102367 creates T102S377 dataset.
EX102374 -Support for (HEADER ONLY) all of these new ID=102 IFCIDs
EX102375 that are documented in DB2 V11;
EX102376 367 374 375 376 378 379 382 383 384 385 386 397
EX102377 398 399 499
EX102378 Actual data records are required to decode new IFCIDs,
EX102379 but by adding the structure for all of these possible 102
EX102382 subtypes, only VMAC102 itself will need to be updated to
EX102383 decode the IFCID-unique variables in these records.
EX102384
EX102385
EX102386
EX102397
EX102398
EX102399
EX102499
IMAC102
VMAC102
VMXGINIT
Dec 28, 2013
Thanks to Paul Walters, Navy Federal Credit Union, USA.
Change 31.277 TYPE30MU dataset now has zero obs by default. It is not
EXTY30MU actually used by IBM SCRT nor MXG for analysis, it can be
Dec 26, 2013 very large, because it replicates product segments in the
same interval, and because if you really need it, it can
be easily enabled, by removing the comment block in the
EXTY30MU exit member in your "USERID.SOURCLIB" tailoring.
Change 31.276 UTILBLDP is the RECOMMENDED ad hoc tool to read SMF data.
UTILBLDP New WANTSMF="list of ID.SUBTYPE" provides easier syntax
Dec 26, 2013 for selection of ID/SUBTYPES you want to be read. You
select the PRODUCTS with BUILDPDB=YES or USERADD=n m z.
You then use either WANTSMF= to select the ones you want,
or you use the existing ZEROOBS= to alternatively force
the unwanted subtypes to have zero observations.
%UTILBLDP(BUILDPDB=NO,
USERADD=42 7072 71 73 74 CMF,
WANTSMF=42.6 70.1 73 74.1 74.5 74.6 240);
%INCLUDE BUILDMXG;
Generally, you can use the argument with fewer arguments,
but to use ZEROOBS correctly you must know all subtypes
in advance, while using WANTSMF= you only need to list
the ID.SUBTYPEs you know about and want.
Thanks to Pat Artis, Performance Associates, Inc., USA.
Change 31.275 Spurious DATASET T102S225 DOES NOT EXIST messages are
READDB2 corrected for that archaic dataset, populated only with
VMACDB2 DB2 V8, where it is written as ID=102 SUBTYPE=IFCID=225,
Dec 25, 2013 and thus read with %READDB2. Instead, in DB2 V9 plus,
Dec 26, 2013 IFCID=255 is written as ID=100 records and read with
TYPEDB2/BUILDPDB. In all versions, however, all QW0225xx
variables are output in the PDB.DB2STATS dataset, which
contains all interval statistics
-MXGNOTEs listing the Subtypes/IFCIDS wanted are revised.
Change 31.274 On a system with only CPs and ICFs, the LPAR SHARE weight
VMAC7072 calculations were wrong, with values like weights instead
Dec 21, 2013 of the expected percentages. The test that deletes 'IFL'
now also delete 'ICF's from weight calculations.
Thanks to Stephen Hoar, Lloyds Banking, ENGLAND.
Change 31.273 Support for RMF III CATG3 Cache Data which writes SMF 74
ADOCRMFV subtype 5 records to the RMF III VSAM file with the same
ASMRMFV metrics as RMF I SMF records, but with more granularity
ASUMCACH (typical 1 minute RMF III INTERVAL and yet take less DASD
EXZRB74C space (only active devices are written in the one-minute
EXZRB74I III records, while all devices are written to RMF I SMF).
EXZRBCAT (Note: MXG outputs ONLY active devices so the output size
IMACZRB per interval will be the same.) This support creates the
VMACRMFV new ZRB74CA dataset, instead of naming it TYPE74CA, since
VMXGINIT archaic variables from segments that no longer exist are
Dec 23, 2013 not kept, but all other variable names are the same.
Dec 28, 2013 -ASUMCACH will now read either SMF TYPE74CA or RMF ZRB74CA
to create PDB.ASUMCACH, looking for ZRB74CA first.
-Notes for collection and use of RMF III Cache Data:
-The RMF Monitor I parameters CACHE and ESS must also be
in effect on the same system with the RMF Monitor III
CACHE parameter. The RMF Monitor I defaults are CACHE
and NOESS.
-If ESS is not in effect for RMF Monitor I on the cache
collection system the related PDB variables will be
missing values (in both TYPE74CA and ZRB74CA).
-From Newsletter FIFTY:
14. Specifying the RMF Monitor I CACHE Option in only
one SYSTEM's RMF parameters eliminates redundant
records on other systems and has been always
recommended. There are other RMF Monitor I options,
ESS(RANK) and ESS(LINK) and FCD along with CACHE
that should all be in one, and the same, SYSTEM, per
these IBM suggestions:
ESS(RANK) - Link performance statistics are gathered.
ESS(LINK) - Extent pool statistics and rank statistics gathered.
As ESS data gathering involves cache activity
measurement, it is recommended to specify both
options in common.
If you specify ESS together with NOCACHE, cache
data is gathered implicitly without writing SMF
74.5 records!
In a SYSPLEX, options CACHE and ESS can be specified
on any system sharing the measured devices.
Therefore specify the ESS and CACHE options together
on one selected system only to avoid duplicate data
gathering.
CACHE - Create SMF 74.5 TYPE74CA Cache Statistics
IMPORTANT: CACHE is the DEFAULT option IBM sets in
RMF Monitor I, so you MUST then ADD a statement with
NOCACHE in RMF parms for all but that one SYSTEM.
-With this change all RMF Monitor III documented tables of
practical use are now supported by MXG.
-Creating readable 74.5 records from the RMF III VSAM was
non-trivial in ASMRMFV, because those records can be more
than 32K bytes in the VSAM file, so longer records needed
to be broken into shorter, but complete, records.
-New ASMRMFV parameters CAT (alias H) and NOCAT (aliases
-CAT, -H) are provided to select or filter CATG3 table
data respectively.
-ASMRMFV messages RMFV036I and RMFV105I are updated to
show CAT table information.
-ASMRMFV validates the CAT header and each SMF Type 74.5
record contained in the CAT table.
-Initial ASMRMFV assembly environment message RMFV000I is
revised to show the assembly date as a Julian date, as a
date in ddmmmYYYY format, and as the 3 character day of
the week.
-The ASMRMFV source code prologue as well as the ADOCRMFV
documentation member are updated appropriately.
-REQUIREMENT: In order to receive these improvements the
current ASMRMFV utility program from this MXG change
must be installed. See MXG SOURCLIB member JCLASM3 for
sample JCL for the assembly and link-edit install steps.
-Only data for active devices is collected which means
that for some Subsystem IDs (SSIDs) all device data
variables in the PDB could be missing for some RMF III
MINTIME intervals.
-Cache Controller data is gathered by individual device
address. There is no indication of which system in the
sysplex initiates a recorded event. Therefore, the data
can be gathered on any system sharing the cached devices.
-Avoid unnecessary high CPU utilization and duplicated
data by gathering cache activity data on only ONE system
per IBM documentation for either RMF Monitor I or RMF
Monitor III.
-Use the RMF Monitor I and RMF Monitor III parameter
NOCACHE to suppress cache data collection on all other
systems.
-Use CACHE(ssid1,ssid2,..,ssidn) in RMF Monitor III to
collect data for only those Subsystems needed. RMF
Monitor I does not support selection by SSID.
-Selection by Subsystem ID may also be needed if not all
subsystems are shared. In this case cache data
collection will be needed on more than one system.
-Consult the section "Generalizing Parmlib Members" in the
IBM RMF User's Guide for your z/OS level for a method to
control selection of which system records cache data.
Other approaches are certainly possible with system
automation tools.
-The best choice for a cache data collection system is one
with high uptime that is not already CPU stressed. z/OS
systems operating as z/VM guests will not record cache
data even if requested.
-All ASMRMFV messages that display a Julian date in the
format of YYYY.DDD are enhanced to show the date as
DDMMMYYYY and a 3 character day of the week.
-11 messages are updated to have the improved date
display:
RMFV000I, RMFV001I, RMFV006I, RMFV008I, RMFV012I,
RMFV013I, RMFV023W, RMFV025I, RMFV026I, RMFV032E, and
RMFV034I.
-Message RMFV008I showed an incorrect creation date when
a non-VSAM data set was supplied in error for a RMF III
VSAM data set. The creation date in this case will
not be shown.
-DSNAME= in the RMFV008I message is now abbreviated to
DSN= to conserve line space.
-1ST VOL= in the RMFV008I message is now abbreviated to
VOL= to conserve line space. It continues to show the
first volume for a multi-volume file.
Change 31.272 Invalid SMF 101 Subtype 1 created from ASG TMON/DB2 had
VMACDB2 INPUT EXCEEDED RECORD error that this change circumvents
Dec 19, 2013 while the problem is investigated. The triplets for the
QBAC and QTXK segments are reversed, and their count does
not always match the count of QPAC segments.
Change 31.271 Support for APAR OA43380 which adds CA*SPLITS and
VMAC42 CI*SPLITS in TYPE42S1-S4 and TYPE42D1-D datasets:
Dec 19, 2013 S1: SMF42FSA SMF42FSB
S2: SMF42FTA SMF42FTB
S3: SMFA2FSA SMFA2FSA
S4: SMFA2FTA SMFA2FTB
D1: SMF42GTA SMF42GTB
D2: SMF42GSA SMF42GSB
D3: SMFA2GTA SMFA2GTB
D4: SMFA2TSA SMFA2GSB
Change 31.270 Cosmetic. MXG Error Messages with 'ERROR:' starting in
VMAC28 byte one of the output are counted by SAS and flagged as
Dec 19, 2013 an ERROR on that page, and text printed in RED on the SAS
log, but that was not my intention, and these members are
corrected so that 'ERROR:' does NOT start in column one:
VMAC28 VMAC102 VMAC110 VMAC113 VMACDB2
VMACHURN VMACNMON VMACVMXA VMACXAM
Most of the "actual" error conditions detected by MXG are
printed 'MXGERROR: ' but there is a lack of consistency.
Thanks to MP Welch, Bank of America, USA.
Change 31.269 -If you specified "a small number" of IFCIDS, they weren't
READDB2 sorted into the output PDBOUT libname because of an
Dec 19, 2013 incorrect compare for GT 1 that should have been GT 0.
Dec 23, 2013 Probably caused by Change 31.128 (MXG 31.05).
Dec 25, 2013 -If you ran ANALDB2R with PDB=SMF and PDBOUT= was NOT set
to PDB, a U1950 ABEND was generated by VGETOBS if the PDB
libname did not exist in your SAS session. Caused
by the PDB2225 macro variable default of PDB and ANALDB2R
did not reset the value to the value of PDBOUT argument.
-Messages about datasets not being deleted were deleted.
Thanks to Paul Walters, Navy Federal Credit Union, USA.
Change 31.268 These RMFINTRV variables should not have been formatted
VMXGRMFI as TIME12.2 since none are durations:
Dec 18, 2013 OTHRSWAP OTHRTRAN OTHREXCP OTHRWKST OTHRSERV OTHRPGIN
TSO2SWAP TSO2TRAN TWO3SWAP TSO3TRAN TSO4SWAP TSO4TRAN
TRIVTRAN TRIVSWAP
Those variables have been buried in &R72VAR for a long
time and it was in the TIME12.2 format statement.
Thanks to Robert Chavez, Florida Power and Light, USA.
Change 31.267 Messages that there are 0 OBS or dataset was not found
VGETOBS are suppressed when dataset=_ALL_ is specified.
Dec 18, 2013
Change 31.266 Documentation of MSU/SERVICE variables. To be expanded.
VMAC7072 -In TYPE72GO dataset, MSU and Service units are the old
Dec 18, 2013 and original "Hardware MSU based on SU_SEC/R723MADJ.
Feb 3, 2016 -Variable SERVICE in TYPE72GO dataset is the sum of
these FIVE components
CPUUNITS SRBUNITS MSOUNITS IOUNITS ZIPUNITS.
(some old MXG notes have only the first four listed but
ZIPUNITS have always been included in SERVICE).
-Variable MSU72 is CPUTM*SU_SEC/1E6, "Hardware MSU", which
includes ALL of the recorded CPU times in the Service
Class 72s. This is the amount of MSU that were consumed
by this Service Class/Reporting Class during this
interval, based on SU_SEC.
-The MSU units in the TYPE70 MSU variables are "Software"
MSU based on the (smaller value) in CECSUSEC/SMF70CPA.
(because they are now used for "SOFTWARE PRICING").
-Current SMF70CPA=13,000 and SU_SEC=26,000 is an example.
-Text revised, Feb 3 2016: TYPE72GO variable MSUSOFT was
wrong, having but was revised in Change 34.010 and does
now contain the Software MSU CECSUSEC/SMF70CPA based.
Change 31.265 Variable STC13MRC='Y' was incorrect when STC13MNR='Y'
VMACSTC should have been have been set, and STC13MNR='Y' never
Dec 17, 2013 was set; MXG tested 00/01 instead of 01/02 STC13RCI.
Thanks to Mike Jacques, BBand T, USA.
Change 31.264 -NMON data for Red Hat Linux has new Data Group metrics
EXNMONDG that create the new dataset
VMACNMON DDDDDD DATASET DESCRIPTION
VMXGINIT NMONDG NMONDG LINUX DATA GROUP METRICS
Dec 17, 2013 -The BBBP Configuration Records have no text in common
with the BBBP records previously supported so the
NMONBBBPxxx datasets will not be populated at this time.
If you can identify which BBBP data is important, I will
update the MXG Support for those data.
-Support for NFSCLIV4 record is supported with these new
variables created in NMONNFS dataset:
OPEN OPEN_CONF OPEN_NOAT OPEN_DGRD CLOSE SETATTR
RENEW SETCLTID CONFIRM LOCK LOCKT LOCKU
LOOKUP_ROOT RENAME
LINK SYMLINK CREATE PATHCONF STATFS READLINK
READDIR SERVER_CAPS DELEGRETURN GETACL SETACL
FS_LOCATIONS
Thanks to Florent Boulesteix, INOVANS partenaire CAAGIS, FRANCE.
Change 31.263 -ERROR.VMACTPMX. VARNAME=$INCLAI NOT FOUND because the MXG
VMACTPMX code for tokenid=51467 was $INCLA, which is now corrected
Dec 17, 2013 to $INCLAI for the test; the variable INCLA is unchanged,
Dec 18, 2013 but now will be populated.
-ERROR.VMACTPMX. VARNAME=$DBS_SD-bar NOT FOUND creates new
variable DBS_SDBA in TYPETPMX dataset.
Thanks to Paul Volpi, UHC, USA.
Change 31.262 -ANALDB2R Account Detail report had some incorrect average
ANALDB2R buffer calculations that could be repeated values. Values
Dec 16, 2013 impacted were Seq prefetch, list prefetch, dyn orefetch,
Dec 18, 2013 asycnh reads, hpool writes, hpool reads, hpool reads
failed.
-If you separated the larger datasets like DB2ACCT or
DB2ACCTP into separate DDNAMES and used the DB2ACCT*
parameters to point to those LIBNAMES, ANALDB2R did not
find the datasets since it only looked in the LIBNAME
pointed to by the PDB= parameter.
Thanks to Jim Lazowski, Northern Trust, USA.
Change 31.261 Support for DB2 IFCIDs 370 (OPEN TRACE DATASET) and 371
EX102370 (CLOSE TRACE DATASET) creates T102S370 and T102S371 data
EX102371 sets.
FORMATS
IMAC102
VMAC102
VMXGINIT
Dec 13, 2013
Thanks to Lori Masulis, Fidelity Systems, USA.
Thanks to Rachel Holt, Fidelity Systems, USA.
Change 31.260 Variable HSMPLEX added to all reports and graphs and if
ANALHSM you are on SAS 9.3 or greater ODS GRAPHICS are used for
Dec 8, 2013 the graphs. A line plot was substituted for the bar chart
where AVG/MAX values by function are being graphed and
VMXGODSO/VMXGODSC were inserted to allow you to send the
output to HTML or PDF.
Thanks to Scott Barry, SBBWorks Inc, USA.
Change 31.259 Variable QWHSNIDIP='IP ADDRESS*FROM*QWHSNID' is added to
VMACDB2 DB2ACCT, DB2ACCTB, DB2ACCTP, DB2ACCTG, DB2ACCTR datasets
VMACDB2H and is populated only for QWHCATYP=8 (DDF Connections).
Dec 5, 2013 When the eight-byte text QWHSNID contains an IP address,
Dec 15, 2013 eight EBCDIC text characters represent the four hex bytes
('A971896F' is 169.113.137.111)), but the VTAM NID must
start with an alphabetic character, so those IP addresses
that start with digits 0 thru 9 for the first nybble, the
value in QWHSNID starts with 'G' thru 'P'. This encoding
was found in a note about message DSNL030I.
Thanks to Alyona Bertneski, JPMorgan, USA.
Change 31.258 -Support for IFCID 359 INDEX PAGE SPLIT record populates
VMAC102 the QW0359xx variables in existing T102S359 dataset.
Dec 3, 2013 QW0359DB='DATA*BASE*ID'
Dec 12, 2013 QW0359FL='FLAGS'
QW0359OB='INDEX*PAGE*SET*ID'
QW0359PG='SPLITTING*PAGE*NUMBER'
QW0359PT='PARTITION*NUMBER'
QW0359TE='TIMESTAMP*AT ENDING OF*SPLIT'
QW0359TS='TIMESTAMP*AT BEGINNING*OF SPLIT'
-The new DB2 Statement ID variable is written to SMF as
either a 4-byte binary or an 8-byte character field that
are now formatted HEX8. for the numeric variables or are
now INPUT as $CHAR8. and formatted $HEX16. for character
QW0172TZ QW0172H9 QW0172W9
QW0196W9 QW0196H9 QW1196H9 QW2196H9 .. QW8196W9.
QW0173CS QW0317ID
Thanks to Rachel Holt, Fidelity Systems, USA.
Thanks to Lori Masulis, Fidelity Systems, USA.
Thanks to Paul Volpi, UHC, USA.
Thanks to Giuseppe Giacomodonato, EPV Technologies, ITALY.
Change 31.257 -INPUT STATEMENT EXCEEDED if TOKDANAM='UTYPE' was the last
VMAC80A segment because MXG expected a 4-byte binary number but
Dec 3, 2013 the field is a 1-byte EBCDIC &NUM1. field.
-New variables decoded and labeled with variable name:
TOKQUEST1 TOKQUEST2 TOKANS1 TOKANS2 TOKAD1 TOKAD2
TOKCOMPANY TOKCOUNTRY TOKFNAME TOKMNAME TOKLNAME
TOKSTATE TOKWTEL TOKZIPCODE
Thanks to Phil Grasser, Norfolk Southern, USA.
Change 31.256 Cosmetic. INPUT for QPACLENX GE 428 actually read in 452
VMACDB2 so the INPUT is split to read thru 428 and then thru 452.
Dec 2, 2013
Change 31.255 Variable R744MCPI in dataset TYPE74MO for SCM does not
VMAC74 exist and was a "copy down" typo when that code block was
Dec 2, 2013 created; it is now deleted completely.
See Change 33.155. SCM data is now in TYPE74ST dataset.
Thanks to Giuseppe Giacomodonato, EPV Technologies, ITALY.
Change 31.254 BVIR30 dataset was incorrect with VERSION 3 records.
VMACBVIR
Nov 28, 2013
Change 31.253 -Change 30.078 corrected SMSGDHWM/SMSGCCUR for CICS/TS 4.1
VMAC110 and earlier but the change of multiplicand was still
Nov 28, 2013 wrong for CICS/TS 4.2 and later.
Thanks to Paul Volpi, UHC, USA.
Change 31.252 -VMXGSUM. If a variable was missing in a NORMx parameter,
VMXGSUM a warning was issued pointing to a variable name but not
ASUM72GO to the specific NORMx parameter that was in error. The
Nov 25, 2013 warning message is now enhanced to contain the full text
of the NORMx parameter.
-ASUM72GO. The DURATM variable was not in the SUM= list
which raised a warning about a missing variable in NORM3.
Change 31.251 MXG 31.08-9 FORMATS fails with BACKLEVEL WPS VERSION 2
FORMATS in statement in line 22864:
Nov 22, 2013 PICTURE MGXLDATE OTHER='%0m/%0d/%0Y %0H:%0M:%0S'
Oct 10, 2014 (DATATYPE=DATETIME);
with "ERROR: Found "DATATYPE" when expecting )
because DATATYPE was not supported by WPS until their
Version 3.1 And MWRTDT format added in MXG 32.09 also
failed with WPS 2.05. MGXLDATE was never used and so
it was removed. MWRTDT is required by MOBWRK06 MOBILE
WORK Discount analysis to meet IBM's CSV file format.
Thanks to Ken Drody, State of Delaware, USA.
Thanks to Kre Martin Torsvik, EVRY AS, NORWAY.
Change 31.250 A spurious MXGWARN when a libname had not been referenced
VGETOBS led to a better way to identify TAPE data libraries and
Nov 22, 2013 to enhance the elimination of tape mounts:
If the LIBNAME has never been referenced:
First record is read as an INFILE and engine type is
identified so the LIBNAME can be issued with the
appropriate engine. If this is a disk library it is
NOT added to the list of DDs found on tape/sequential.
If the DDNAME is on tape and SPINTAPE NE YES and DATASET
NE _ALL_, OBS count is set to one and no further
processing is needed.
If SPINTAPE=YES or DATASET=_ALL_:
All tape volumes are read to find all datasets and
captured in MXGTABLES which is NOT deleted.
If DATASET NE _ALL_, then also looks for this
specific dataset in MXGTABLES, and will verify the
dataset exists and determine an OBS count.
Else if SPINTAPE NE YES and DATASET NE _ALL_ and
the dataset is on disk, looks for the specific
dataset without using MXGTABLES. This is also the
behavior on ASCII as LIBNAMEs must have been
identified to SAS with a LIBNAME statement.
If a dataset does not exist or has 0 OBS the calling
program may give you a message indicating the issue
and then will die gracefully. The results are in
global macro variables VGETDSN and VGETOBS. If
VGETDSN is empty, the dataset did not exist.
Thanks to MP Welch, Bank of America, USA.
Change 31.249 These datetime variables were INPUT but not formatted or
VMAC110 not LENGTH'd or were not kept, but no one had noticed,
Nov 18, 2013 except for the MXG QA tests, so this is cosmetic.
VMAC110 : DS7LSTRT DS7START
VMAC74 : SMF74GIE
VMAC75 : SMF75GIE
VMAC76 : SMF76GIE
VMAC77 : SMF77GIE
VMACBBMQ: CHLTOD0
VMACCIMS: IMSSTCK
VMACIMS : SYNCSTCK
VMACIMSA: STSTARTTOD SYNCSTCK TPCPCLCK
VMACOMCI: ESFTIME
VMACOPC : MT0OCCTOK
VMACROSC: TIME ==> Renamed to TEMPCKTI not KEPT
VMACSMF : TESTTIME ==> Renamed to SMFTIME
VMACSYSV: RTCLOCK RTCSTART SDCRETOD SCDRSTOD
VMACTMMQ: LMRKTOD2
VMACTMNT: REND ==> Renamed to RENDTIME
VMACTMO2: T2INEDTS T2INSDTS TMMDXSTK TXINEDTS TXINSDTS
VMACTMV2: IPLTIME
VMACVMXA: PLSFOB1T PLSFOBTM
VMACXPSM: OUTGTIME
Change 31.248 If you specified DATES= any of the "one word" tokens like
ANALGRID LASTWEEK, etc., a logic error occurred because &TO was a
Nov 17, 2013 null value. Now, FROM=INPUT("&FROM",?? DATE.) is used so
Dostları ilə paylaş: |