* copyright (C) 1984-2019 merrill consultants dallas texas usa



Yüklə 28,67 Mb.
səhifə292/383
tarix17.01.2019
ölçüsü28,67 Mb.
#98988
1   ...   288   289   290   291   292   293   294   295   ...   383

IMACCICS macros, which is required, so the cosmetic move

to make it easier lost out, and you will have to include

IMACCICS before you invoke CICINTRV if you ever get that

deep in creating your own MXG job for CICS processing.


Change 14.187 Support for Tandem Controller Data and Line Data creates

EXTANCTL two new datasets:

EXTANLIN Dataset INFILE Description

IMACTAND TANDCTRL TANDCTRL Controller statistics

TYPETAND TANDLINE TANDLINE Line statistics.

VMACTAND You will need to add DD statements for TANDCTLR/TANDLINE

Aug 15, 1996 (at least with DD DUMMY) if you do not wish to process

these data, as MXGs TYPETAND will try to read all five

Tandem data sources that are now supported.

Thanks to MH, Allied Irish Bank, IRELAND

Thanks to Joe Fleischmann, U.S. Bancorp, USA.
Change 14.186 Steve Franklin's code to read Network General Sniffer's

ADOCSNIF data records! Sniffer is a hardware monitor attached to

IMACSNIF your network that sees every frame and can be programmed

TYPESNIF to filter, decode and create data records. This code

VMACSNIF reads the Sniffer data, as documented in Steve's article

Aug 15, 1996 "Deriving response time of Client/Server applications",

in "Capacity Management Review", Volume 24, No 7, July

1996, published by Demand Technology (subscribe or buy

the back issue by calling 941 261 8945).
One Sniffer monitor on a LAN/WAN segment sees all of the

frames on that segment, capturing source and destination

addresses plus datastream sequence and acknowledgement

numbers plus the response times and traffic volume, plus

information from the data stream itself, so you can

recognize transactions and decompose their response time.

Several techniques for transaction identification are

discussed. Data from multiple Sniffers is combined to

measure each of the response components across multiple

segments; three Sniffers measured a PC client talking via

two WAN segments to an Oracle database in the case study.
This code is functional, but does not (yet?) have the

normal MXG embellishments (Labels, MXG-names, etc.)

Should there be enough interest, I will doll it up later.

If you have a Sniffer monitor, and you must measure and

understand the transaction response components in your

C/S transactions, this may well be your salvation, but

the analysis is neither canned nor straightforward. You

will need to read the paper and SAS code to understand

how to tailor these sample programs for your environment,

and you best have some good knowledge of the applications

you are measuring! If you also use a script (or modify

the application?) to issue calls that define the start

and end of a logical business transaction, those events

are capturable so you can get true business transaction

response time. You can also capture SQL statements that

are used in Client/Server applications and parse them to

identify TABLE names and WHERE conditions so that network

response time can be decomposed according to specific SQL

statements or RPCs (Remote Procedure Calls); that might

be sufficient for recognition of a business transaction

if it always begins with a unique call and thus avoid the

application modifications or script wraps. There is lots

of opportunity here; this is pretty powerful stuff!

Thanks to Steve Franklin, RGI, Inc, USA.


Change 14.185 VM Print sent to JES2 is now merged in PDB.JOBS with the

BUILDPDB Purge record for these "Print-only" JES2 jobs. Before,

BUILD005 MXG sent the type 26 data to PDB.NJEPURGE, and the type 6

Aug 15, 1996 record(s) were spun (awaiting for the non-existent purge

record) for SPINCNT days, and then later the type 6 data

was output in PDB.PRINT (but with no accounting fields)

and a sparce observation in PDB.JOBS was created. This

change makes the PDB.JOBS data complete and timely for

print-only jobs. The change itself was quite simple:

In the logic to build PDB.NJEPURGE, remove the test for

INREASON='SR' (so those records are output to TYPE26J2),

and in the logic to build PDB.JOBS, change the test to:

IF SUBSTR(INBITS,5,1)='P' AND INREASON NE 'SR' THENDO;

(so that ABEND values of JCL or CRSH are not set for

these print jobs, since they do have no JSTRTIME/JENDTIME

values, because they did not execute on MVS). Note that

these print-only jobs can be identified in PDB.JOBS by

variable INREASON='SR', and that the values of all of the

variables from the type 30 records will be missing.

Peter also pointed out that new options on the VM TAG

command (used to send print to MVS) now allow you to

cause the VM USERID to be sent to MVS and VM USERID will

be the JOB name, rather than the old RSCSnnnn JOB name.

Thanks to Peter J. Jansen, Bank for International Settlements, SWITZ.


Change 14.184 Variable TRANTYPE was increased to two bytes in CICS 4.1.

VMAC110 Change 13.296 changed FORMATS, but the VMAC110 change was

Aug 15, 1996 not migrated into the real MXG library (IBM confidential

requires that I keep dual source libraries until GA, and

I forgot to make the update in both places!).

For CICSTRAN, move TRANTYPE from $1 line to $2 line in

the LENGTH statement, and in the SMFPSRVR GE 41.0 INPUT,

change +3 TRANTYPE $CHAR1. to TRANTYPE $CHAR2. +2.

For CICSEXCE, conditional logic was added.

Thanks to Ove Dall-Hansen, CODAN Insurance A/S, DENMARK.


Change 14.183 TYPE7204 (Goal Mode RMF Monitor III) variable TRANS was

VMAC7072 too small causing AVGELPTM to be way too large because

Aug 13, 1996 variable TRANS should be INPUT as &RB.8. and not &RB.8.6.

This is a continuation of Change 14.122.

Thanks to Tom Parker, CSC, USA.
Change 14.182 Support for New Dimension Software's CONTROL-T Tape

EXCTLTDS Management records creates two datasets:

EXCTLTVL CTLTDSN - Data Set Record

IMACCTLT CTLTVOL - Volume Record

TYPECTLT A number of formats are created to decode fields in the

VMACCTLT data. The volume record has a repeating vault section,

Aug 13, 1996 but test data had only one (of a maximum of three), so

currently only the first vault segment is output.

Thanks to Paul Hassett, Department of Transportation, USA.
Change 14.181 TANDEM variables were misspelled in two places.

VMACTAND Change C2WMISS=C2RMISS/DURATM; to C2RMISS=.... and

Aug 12, 1996 Change C3WMISS=C3RMISS/DURATM; to C3RMISS=....

Thanks to Steve Smith, BGS, USA.


Change 14.180 TYPE72GO Goal Mode dataset did not contain PERFINDX, the

VMAC7072 performance index. Logic was inserted to calculate this

Aug 12, 1996 index, to label it, and to keep it in TYPE72GO.

Thanks to Kevin Carpenter, First of America, USA

Thanks to Don Deese, (CPExpert), Computer Management Sciences, USA.
Change 14.179 Support for SoftAudit Version 5.1 (INCOMPATIBLE, but only

EXSFTAL because MXG now requires //XPMODS DD statement; if you

IMACSFTA do not have Version 5.1 installed, then use DD DUMMY).

VMACSFTA The //XPMODS flat file (Created by SoftAudit's extract

Aug 12, 1996 program) is now read to create the new MXG dataset

SOFTMODS to describe the Installed Load Module File.


Change 14.178 The SMF Simulator now tests a CISIZE of 18432, which may

ANALSMF be better than 16K on 3390s, as 3 blocks fit per track.

Aug 12, 1996
Change 14.177 In VMXGSUM invocations, if DESCENDING was used in the

VMXGSUM SUMBY=LIST and KEEPALL=NO was used (default), the parse

Aug 12, 1996 logic did not recognize the DESCENDING attribute, which

could cause NOT SORTED conditions. Now the parser does.


Change 14.176 TRNDTALO has been redesigned to "SPIN" allocations that

TRNDTALO are active at the time SMF data is dumped. Comments in

Aug 12, 1996 the member describe the new algorithm designed to fix the

end effects. This still is a circumvention for the basic

problem, that allocation records are only written at the

end of allocation; a redesign of the ASMTAPES monitor to

create interval allocation records will ultimately solve

the problem of counting tape drives for good, but as the

comments describe, only a very small number of jobs are

encountered with hanging allocations, so the new logic is

definitely an improvement.

Thanks to David Childress, Lowe's Companies, Inc, USA.


Change 14.175 Using ANALCNCR, if you did specify an output dataset and

ANALCNCR you also requested reports, you received a DATASET NOT

Aug 12, 1996 FOUND and may get two prints of the Summarized output.

Thanks to Tom Elbert, John Alden, USA.


Change 14.174 DB2 message "VMACDB2 ERROR ... QWHSIID=230 UNEXPECTED"

VMACDB2 due to MXG error. Find IF QWHSIID=230 THEN SUBTYPE=3;

Aug 12, 1996 and add "AND SUBTYPE NE 3" to the next IF statement.

The impact of this error message was that DB2 statistics

observations were not output in DB2GBPAT.

Thanks to John Rosser, Springs Industries, USA.


Change 14.173 Reserved Change Number.

Aug 10, 1996


Change 14.172 Variable EXECTM in TYPE30_V and PDB.SMFINTRV datasets was

VMAC30 wrong for steps that created only a subtype 3 (i.e., they

Aug 10, 1996 did not run long enough to create a subtype 2 interval).

Change the equation EXECTM=INTETIME-INTBTIME to read:

IF SUBTYPE=3 AND INTBTIME LT LOADTIME THEN

EXECTM=INTETIME-LOADTIME;

ELSE EXECTM=INTETIME-INTBTIME;

Thanks to Jean Quinkert, Inland Steel, USA.


Change 14.171 Support for MODEL204 Release 3.2.1 (INCOMPATIBLE) inserts

IMACM204 new fields in the Logoff and the Since-Next records.

VMACM204 This support is based on CCS's Early Warning 006 but has

Aug 9, 1996 not yet been tested with real 3.2.1 data. The new default

for _M204VER in IMAC204 is now 3.2 instead of 3.0.

Aug 16: Variable M24DKAR was inadvertently deleted from

the INPUT statement for LOG records in early code.

Thanks to Allan Rollason, SAS Europe, GERMANY.


Change 14.170 More RACF Reports for Command Events can be produced from

EXTY8008 nine new TYPE80nn datasets from member TYPE80A:

EXTY8012 Dataset EVENT Command

EXTY8015 TYPE8008 08 ADDSD

EXTY8016 TYPE8012 12 ALTGROUP

EXTY8017 TYPE8015 15 DELDSD

EXTY8018 TYPE8016 16 DELGROUP

EXTY8020 TYPE8017 17 DELUSER

EXTY8021 TYPE8018 18 PASSWORD

EXTY8024 TYPE8020 20 RALTER

IMAC80A TYPE8021 21 RDEFINE

VMAC80A TYPE8024 24 SETROPTS

Aug 8, 1996 Because IBM documentation of RACF records is not complete

(undocumented fields, conditional fields), I can only code

if I have data records. If the dataset TYPE80CM contains

any observations, it means you have events I have not seen

before. If you will PROC PRINT DATA=TYPE80CM, you can see

which events exist, and that dataset contains the RECNUM

in your SMF data; use this program to print a hex dump of

those records: DATA;INFILE SMF;INPUT;IF _N_= recnum;LIST;

and send that output with the PROC PRINT for enhancement.

Thanks to V.J. Picotte, Key Services, USA.


Change 14.169 JES3 MDS (Main Device Setup) tape fetch and mount counts

IMACPDB are now captured in variables TAPFETCH and TAPEMNTS in

BUILDPD3 PDB.JOBS dataset created by the BUILDPD3 JES3 PDB. These

BUIL3005 counts have been available in dataset PDB.TYPE25, but now

BUILDPDB the BUILDPD3/BUIL3005 logic sums the TYPE25 counts into

BUILD005 PDB.JOBS. A new dataset SPIN.SPIN25 is also created in

Aug 7, 1996 the SPIN library (and copied into the PDB for backup).

For JES3-sites, if you have tailored your IMACPDB member

in your "USERID.SOURCLIB" for your BUILDPD3 job, this

change is INCOMPATIBLE in that you must re-tailor those

IMACPDB changes, starting with this IMACPDB member; if

you miss this instruction, you will get errors on the log

that variables READTIME JOB JESNR are not in WORK.TYPE25!

This enhancement was not straightforward, because IBM

does not include JESNR in the type 25 record, so it

matches type 25's with type 30_1 initiation records to

add JESNR to TYPE25 before the MERGE. In IMACPDB the

macro _PDB25 contains JESNR in the list, even though

JESNR does not exist in the SMF record, because that

macro is used again later in BUILDPD3 when there has

been created a JESNR in TYPE25.

This change did not add variables TAPFETCH and TAPEMNTS

to PDB.SPUNJOBS dataset (but I will later, if required).
Unrelatedly, the creation of PDB.SMFINTRV was enhanced;

by changing IF ININTRV THEN OUTPUT; to IF ININTRV; and

relocating the statement after the SET statement, code is

bypassed when there are no TYPE30_V observations. This

change was also propagated into JES2 BUILDPDB/BUILD005.

And Change 13.241, which added the %INCLUDE of IMACSPCK

had been overlooked in BUIL3005, but is now added.

Thanks to Alan McBain, National Westminister Bank, ENGLAND.


Change 14.168 Support for Omegamon/VTAM V200 (INCOMPATIBLE, four bytes

EXOMVLU were inserted and eight new trend subtypes are created.)

EXOMVMPG MXG creates these new datasets:

EXOMVMPS IRNUM DATASET Description

EXOMVNCC 7 OMVTMPCG MPC Group

EXOMVNTL 8 OMVTMPCS MPC Subchannel

EXOMVNTP 9 OMVTNCPC NCP CCU

EXOMVPU 10 OMVTSDLC SDLC/BSC Line

EXOMVSDL 11 OMVTPU PU/Cluster

FORMATS 12 OMVTLU LU/Terminal

VMACOMVT 13 OMVTNTRP NTRI Physical Link

Aug 6, 1996 14 OMVTNTRL NTRI Logical Link


but only subtypes 9 and 10 have been validated with data,

(and ON09CU and ON09CF look suspicious in OMVTNCPC).

Forty new exception conditions were added that are now

recognized and decoded by new values for $MGOMVEX format

that is used in dataset exception dataset OMVTEXCE.

Thanks to Harry Olschewski, dvg Hannover, GERMANY.

Thanks to ??? , Sparkassen-Rechenzentrum, GERMANY.
Change 14.167 Some intervals may be missing in DB2STATS, DB2STAT0 and

DIFFDB2 DB2STAT1 in DB2 4.1, because IBM changed QWHSISEQ without

Aug 3, 1996 notice. Statistics interval records contain accumulated

counters, so MXG's DIFFDB2 code must sort records and

then subtract counters in adjacent records to create the

interval statistics. To make sure only adjacent records

are output, the IFCID Sequence Number, QWHSISEQ, is used

to validate that records are adjacent. However, DB2 4.1

now writes records for adjacent intervals with skipped

values of QWHSISEQ (109,110,111,113,115,116), which made

MXG's validation logic to not output those observations.

In addition to adjacency validation, the MXG QWHSISEQ

logic also deleted the first record from each subsystem

(the first record found cannot be output, unless it is

also the startup, QWHSISEQ=1, because there is no prior

record for deaccumulation), so the new logic now protects

for first record found. Change the four occurrences of:

SEQCHECK=DIF(QWHSISEQ); DROP SEQCHECK;

IF QWHSISEQ GE 1 AND SEQCHECK EQ 1 THEN DO;

DIFFDBxx=1;

%INCLUDE SOURCLIB(EXDB2ST0);

END;


to read (change DIFFDBxx=1 in each of the four sets):

LENGTH PREVSSID $4;

SEQCHECK=DIF(QWHSISEQ);

IF SEQCHECK GE 1 AND PREVSSID EQ QWHSSSID THEN DO;

DIFFDBxx=1;

%INCLUDE SOURCLIB(EXDB2ST0);

END;

ELSE DO;


PREVSSID=QWHSSSID;

RETAIN PREVSSID;

END;
Note inserted Sep 25: the previous code was printed

and implemented incorrectly until Change 14.230. The

code stub above has been corrected to the way it

should have been.


While this change prevents deletion of good intervals,

it opens a new exposure if DB2 records are not written

for an interval (if SMF is blocked DB2 does not retry).

Because SEQCHECK can't be used, MXG will deaccumulate

several interval's data into one interval, causing high

values (though not necessarily high rates) in that obs.

To help isolate data problems, the variable SEQCHECK is

now kept in the DB2STATx datasets. SEQCHECK is one if

QWHSISEQ is adjacent, and otherwise is more than one.

I intend to open a problem with IBM to see if this was

an intentional change or an inadvertent error, so this

change may be revised if IBM admits to an error, but with

DB2 4.1 now skipping QWHSISEQ values, this change is

required until IBM guarantees adjacency of QWHSISEQ.

Thanks to Pierre Li, Deere and Company, USA.
Change 14.166 Use of permanent versus temporary ARRAY statements costs

VMAC78 big! Changing the ARRAY statements added by 14.121 from

Jul 27, 1996 ARRAY PCTALLBZ {4096} 4 PCTA0001-PCTA4096;

ARRAY LCUIORAT {4096} 4 LCUI0001-LCUI4096;

to read:

ARRAY PCTALLBZ {4096} 4 _TEMPORARY_;

ARRAY LCUIORAT {4096} 4 _TEMPORARY_;

eliminated the significant increase in CPU time BUILDPDB

and TYPE78 seen in MXG 14.04 and MXG 14.05. See the SAS

Technical Note in Newsletter THIRTY on Permanent Arrays.


Change 14.165 APAR OW13536 adds new fields for the Coupling Facility

VMAC74 (RMF type 74 subtype 4 record, MXG dataset TYPE74CF)

Jul 27, 1996 that are extensively discussed in WSC FLASH 9609.

The Coupling Facility continues to be a potential serious

bottleneck if its capacity (CPU and memory) is not well

managed. IBM has added new instrumentation for that

purpose with this APAR, which was implemented compatibly.
Change 14.164 APAR OW15406 for RMF adds support for Year 2000.

VMAC73 IBM has documented that all packed decimals will contain

VMAC74 0cyydddF format, and added an expanded IODF creation date

VMAC75 (with YYYY format vice YY) field (compatibly!) to the end

Jul 25, 1996 end of the Type 73 Channel Path Control section, the Type

74 Device Control Data Section, and the Type 78 Subtype 3

Control Section for ES/9000 CPUs. MXG detects existence

and uses the YYYY format when it is present. With this

APAR and MXG change, RMF fully supports the year 2000,

and member YEAR2000 has been updated to so indicate.


Change 14.163 APAR OW21583 announces that TCP/IP will write SMF type 6

VMAC6 record with SUBSYS=9, but no more information (APAR is

Jul 25, 1996 still open). Test for SUBSYS=9 was added, but still
await IBM documentation. This change is still open.
Change 14.162 ANALMPT invokes ANALCNCR and caused FILE WORK.SPLIT.DATA

ANALCNCR DOES NOT EXIST error (if OUTSUMRY= is not specified). To

Jul 12, 1996 correct, find the second occurrence of the statement:

PROC PRINT DATA=&OUTSUMRY SPLIT='*';

and delete that line (the second occurrence, but do not

delete the line containing DATA=OUTSUMRY, without paren).

Thanks to Dr. Alexander Raeder, Karstadt AG, GERMANY.

Thanks to Harmuth Beckmann, Karstadt, AG, Germany


Change 14.161 Cosmetic. Two titles with CPU TIM were corrected to read

ANALPROG CPU TIME.

Jul 12, 1996

Thanks to Dr. Alexander Raeder, Karstadt AG, GERMANY.

Thanks to Harmuth Beckmann, Karstadt, AG, Germany
====Changes thru 14.160 were included in MXG 14.05 dated Jul 15, 1996===
Change 14.160 TSO/MON distribution bucket values TSMPDIS1-TSMPDIS8 were

VMACTSOM not converted to seconds (divide by 38400) nor were they

Jul 12, 1996 kept, but now they are.

Thanks to Manfred Thomas, BHF-Bank, GERMANY.


Change 14.159 Documentation of the datasets created by BUILDPDB and the

ADOCPDB sort order of those datasets (from the MXG Supplement)

Jul 12, 1996 was not moved into SOURCLIB. While slightly out of date,

at least it's finally here!

Thanks to Jean Quinkert, Inland Steel, USA.
Change 14.158 Support for OS/390 Version 1 Release 2 (COMPATIBLE).

EXTY72GO MXG 13.13 and later tolerates OS/390 Release 2, but to

EXTY892 capture the several new variables and new subtypes of

IMAC89 type 74 and 89 records, MXG 14.05 is needed.

VMAC4789 -UCBNAME is now $4 in TYPE4789 (but this was not new with

VMAC7072 OS/390 - I had not noticed the new field until now).

VMAC79 -Variables SMF72SPA,SMF72SPE,SMF72SRS (shared page stats)

VMAC89 are added to TYPE72 (again, had been overlooked in 5.2).

VMAC99 -Variables R722GPI,R722TSV,R722VIN,R722VLC (shared pages)

Jul 11, 1996 are added to TYPE72MN (also overlooked in 5.2).

-Variables R724GPI,R724TSV,R724VIN,R724VLC (shared pages)

are added to TYPE7204 (also overlooked in 5.2).

-Variables R791CMNI,R791EXCT,R791SPI,R791PNV,R791PVIO (the

ASID's pages in common, VIO/Non-VIO, shared pagins) are

added to TYPE79. (also overlooked in 5.2).

-New dataset TYPE892 contains interval usage data summary

for each registered product.

-The test R723TYPE IN(1,2,4,5) in EXTY72GO was changed to

R723TYPE IN('1','2','4','5') to eliminate character

conversion (and associated SAS note).

-Variables were added to TYPE99TT and TYPE99U1 datasets.
Change 14.157 For user-written VMXGSUM invocations with INDATA= that

VMXGSUM did not have a blank between the dataset name and the

Jul 11, 1996 parenthesis, i.e., INDATA=MYDATA(IN=MYVAR), the parsing

logic failed. Use INDATA=MYDATA (IN=MYVAR), and the code

works! This change enhances the parser to accept the

dataset options in the INDATA= with or without the blank.

Thanks to Alfred Mak, Asia Pacific Technologies, SINGAPORE.
Change 14.156 Change 14.112 was revised (see text) and additional IDMS

VMACIDMS changes are necessary.

Jul 11, 1996 -In the Journal Wait segment, insert a +1 after JRLFILE is

INPUT and change the SKIP calculation to SKIP=SKIP-105;

vice 104.

-In the DBKEY Wait segment, insert +2 after DBKPGGRP and

change the SKIP calculation to SKIP=SKIP-14; vice 12.

Thanks to Martin Wieland, Neckermann B.V., THE NETHERLANDS


Change 14.155 Utility to reconstruct mainframe data from PC file. When

UDEBLOCK you download an MVS file that was VB or VBS, you had to

Jul 11, 1996 make a RECFM=U copy on MVS, then download that data to a

PC, creating a contiguous file of bytes. But you cannot

upload that PC file (perhaps to a different MVS system)

and use it, because there are no record delimiters. But

now you can upload the PC file , putting it into an MVS

file with RECFM=U, BLKSIZE=32756, and then use this new

UDEBLOCK utility to read that file and create from it a

true copy of the original VB/VBS file. The output file

of UDEBLOCK will have RECFM=U,BLKSIZE=32756, but you will

specify RECFM=VB or RECFM=VBS on the DD statement when

you read that data, and all will be well. You may not

need this utility, but I needed it to be able to move

a VB GTF file from SAS's MVS system thru my PC to my MVS

system. Check it out!


Change 14.154 Support for DB2 records written to GTF. The earlier user

REXXDB2 written utility (REXXDB2) did not always create valid DB2


Yüklə 28,67 Mb.

Dostları ilə paylaş:
1   ...   288   289   290   291   292   293   294   295   ...   383




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin