MQSeries for OS/390 - Log extract program

Similar documents
MS15: MQSeries for MVS/ESA Archive log housekeeping Version 1.1. User Guide. Document Number MS15. November 7, 2002

MD0A: WebSphere MQ Graphical Clustering Demo User Guide Version 1.0

WebSphere MQ Telemetry Java Classes Version 1.1

IBM ThinkPad 770 Setup Guide

CA Software Change Manager for Mainframe

First Edition (September 1990)

Operating System Installation Guide for Models 3xx, 5xx, 7xx, and 9xx

Tivoli Policy Director for MQSeries Version 3.8. GuidetoGlobalSecurityToolkit(GSKIT) Messages 3.8 GC

CA8B: CICS Transaction Server for OS/390 - BMS Map CWI conversion utility. Version 1.0

Achieving Higher Levels of Productivity with IBM ISPF Productivity Tool for z/os IBM Redbooks Solution Guide

IBM ThinkPad USB Portable Diskette Drive. User s Guide

TMON for CICS/ESA Release Notes Version 1.5

IBM. Cúram JMX Report Generator Guide

IBM ThinkPad 600 Setup Guide

MQSeries Integrator V2 Perl Compute Plug-In Version 1.0

Information/Management

IBM ThinkPad 380XD/385XD Setup Guide

Setting Up Swagger UI for a Production Environment

IBM Personal Computer. About Your Software Windows NT Workstation 4.0, Applications, and Support Software

IBM Operational Decision Manager. Version Sample deployment for Operational Decision Manager for z/os artifact migration

Release Notes. IBM Tivoli Identity Manager Universal Provisioning Adapter. Version First Edition (June 14, 2010)

IBM Security QRadar Version Forwarding Logs Using Tail2Syslog Technical Note

Setting Up Swagger UI on WebSphere

IBM. User s Guide. NetView File Transfer Program Version 2 for MVS. Release 2.1 SH

QCOPYPRP Sample COBOL WMQ CICS Copy messages adding Message Properties QCOPYPRP. Sample COBOL CICS WMQ Program Copy messages and apply a property

Printing Systems Division. Infoprint Manager for AIX NLV Release Notes

Secure Held Print Jobs. Administrator's Guide

IBM Hidden Protected Area Access IBM Predesktop Area

IBM 4765 PCIe Cryptographic Coprocessor CCA Utilities User Guide

Exchange for WebSphere MQ Support tools Version 1.6

Build integration overview: Rational Team Concert and IBM UrbanCode Deploy

orb2 for C/C++ Administrator Guide (z/os)

TMON for DB2 Release Notes Version 1.5

IBM Endpoint Manager for OS Deployment Linux OS provisioning using a Server Automation Plan

CICS Web Interface - Templates In Memory, Improving performance and Management

IBM z/os Management Facility V2R1 Solution Guide IBM Redbooks Solution Guide

Printing Systems Division. Infoprint Manager for Windows NLV Release Notes

IBM Software. Maximo Asset Management Version 7 Releases. Enabling Enterprise Mode for Internet Explorer. Maximo Report Designer/Architect.

Engineering and Scientific Subroutine Library for AIX, Version 4 Release 2. Installation GA

US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

IBM DEBUG TOOL NEWSLETTER

Version 1.2 Tivoli Integrated Portal 2.2. Tivoli Integrated Portal Customization guide

Tivoli Management Solution for Microsoft SQL. Statistics Builder. Version 1.1

PDSUPDTE. 4. When the length of STRING2 is less than that of STRING1, blanks are inserted after the next pool of two blanks following STRING1.

Platform LSF Version 9 Release 1.1. Migrating on Windows SC

IBM MQ Appliance Performance Report Version June 2015

IBM. IBM Software Manufacturing Solutions. Attached to this memorandum: Summary of Changes. List of Program Material. Installation Instructions.

Tivoli Access Manager for Enterprise Single Sign-On

IBM LoadLeveler Version 5 Release 1. Documentation Update: IBM LoadLeveler Version 5 Release 1 IBM

Chapter 1 CONCEPTS AND FACILITIES. SYS-ED/ Computer Education Techniques, Inc.

IBM Operational Decision Manager Version 8 Release 5. Configuring Operational Decision Manager on Java SE

Note to US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

IBM SmartCloud for Social Business. Sametime Chat and Meetings mobile User's Guide

IBM UrbanCode Cloud Services Security Version 3.0 Revised 12/16/2016. IBM UrbanCode Cloud Services Security

Installing WDI v3.3 on z/os

Using application properties in IBM Cúram Social Program Management JUnit tests

Best practices. IBMr. Managing resources in an IMSplex with OM, type-2 commands, and SPOC IBM IMS. Janna Mansker IMS Development

CONFIGURING SSO FOR FILENET P8 DOCUMENTS

Using Client Security with Policy Director

Tivoli Endpoint Manager for Patch Management - AIX. User s Guide

Transporting files between MVS and MVS or between MVS and a Workstation

IBM Control Desk 7.5.3

Softcopy Librarian Version 5. User's Guide IBM GC

Downloads for TPF Family Products. Sample SOAP Bridge Wrapper on z/tpf Enterprise Edition V1.1. Page 1 of 5

Program Directory for Tivoli Workload Scheduler. Version 8 Release 1, Modification Level 0. Program Number 5698-WKB. for Use with OS/390 z/os

Using Tivoli Workload Scheduler event-driven workload automation

Migrating Classifications with Migration Manager

IBM Fault Analyzer for z/os

Patch Management for Solaris

Release 5, Modification Level 0

White Paper: Configuring SSL Communication between IBM HTTP Server and the Tivoli Common Agent

Limitations and Workarounds Supplement

Rational Developer for IBM i (RDI) Distance Learning hands-on Labs IBM Rational Developer for i. Maintain an ILE RPG application using.

Tivoli Decision Support 2.1

IBM Storage Management Pack for Microsoft System Center Operations Manager (SCOM) Version Release Notes

Platform LSF Version 9 Release 1.3. Migrating on Windows SC

Adapter for Mainframe

Tivoli Decision Support for OS/390 Administration Guide. Version SH

IBM Rational Development and Test Environment for System z Version Release Letter GI

Reporting and Graphing

IBM Algo Financial Modeler Version Foundation/Lite Installation Guide IBM

IBM. Documentation. IBM Sterling Connect:Direct Process Language. Version 5.3

Release Notes. IBM Tivoli Identity Manager GroupWise Adapter. Version First Edition (September 13, 2013)

IBM i2 ibridge 8 for Oracle

IBM Rational Synergy DCM-GUI

IBM. Networking INETD. IBM i. Version 7.2

Tivoli OPC Extended Agent for SAP R/3. Version 3.0

IBM. Software Development Kit for Multicore Acceleration, Version 3.0. SPU Timer Library Programmer s Guide and API Reference

IBM Spectrum LSF Process Manager Version 10 Release 1. Release Notes IBM GI

Integrating the Hardware Management Console s Broadband Remote Support Facility into your Enterprise

IBM Tivoli Monitoring for Databases. Release Notes. Version SC

Installation Guide. Tivoli Decision Support 2.0

IBM Storage Driver for OpenStack Version Installation Guide SC

IBM XIV Host Attachment Kit for HP-UX Version Release Notes

About Your Software IBM

IBM PCI Hot Plug Services User Guide

CA JCLCheck Workload Automation

IBM Watson IoT Maximo Asset Management. Maximo Report Toolbar Access Guide

XCLI Utility User Manual

IBM. Program Directory for. IBM z Systems Development and Test Environment Tools. V Program Number 5725-G39 FMID HALMB00.

Transcription:

Version 2.3 June, 2004 Colin Paice (PAICE@UK.IBM.COM) Arndt Eade (ARNDT.EADE@UK.IBM.COM) IBM Hursley Property of IBM

Take Note! Before using this report be sure to read the general information under "Notices". Third Edition, March 2004 This edition applies to Version 2.2 of MQSeries for OS/390 - Log extract program and to all subsequent releases and modifications unless otherwise indicated in new editions. Copyright International Business Machines Corporation 2001, 2002. All rights reserved. Note to US Government Users -- Documentation related to restricted rights -- Use, duplication or disclosure is subject to restrictions set forth in GSA ADP Schedule contract with IBM Corp. ii

Table of Contents Notices... iv Summary of Amendments... v Preface... vi Bibliography... vii Chapter 1. What is provided... 1 Introduction... 1 Additional materials with this SupportPac... 1 Abends... 4 Record layout for the data sets... 4 Replay messages... 6 Replay messages... 6 Count the number of bytes put to each queue... 6 Extracting changes to objects... 7 Running CSQ1LOGP... 7 Running CSQ4LOGS... 7 Known errors... 7 iii

Notices The following paragraph does not apply in any country where such provisions are inconsistent with local law. INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore this statement may not apply to you. References in this publication to IBM products, programs, or services do not imply that IBM intends to make these available in all countries in which IBM operates. Any reference to an IBM licensed program or other IBM product in this publication is not intended to state or imply that only IBM's program or other product may be used. Any functionally equivalent program that does not infringe any of the intellectual property rites may be used instead of the IBM product. Evaluation and verification of operation in conjunction with other products, except those expressly designated by IBM, is the user's responsibility. IBM may have patents or pending patent applications covering subject matter in this document. The furnishing of this document does not give you any license to these patents. You can send license inquiries, in writing, to the IBM Director of Licensing, IBM Corporation, 500 Columbus Avenue, Thornwood, New York 10594, USA. The information contained in this document has not be submitted to any formal IBM test and is distributed AS-IS. The use of the information or the implementation of any of these techniques is a customer responsibility and depends on the customer's ability to evaluate and integrate them into the customer's operational environment. While each item has been reviewed by IBM for accuracy in a specific situation, there is no guarantee that the same or similar results will be obtained elsewhere. Customers attempting to adapt these techniques to their own environments do so at their own risk. Trademarks and service marks The following terms, used in this publication, are trademarks of the IBM Corporation in the United States or other countries or both: IBM MQSeries OS/390 TSO REXX iv

Summary of Amendments Date 30 June 2001 August 2002 September 2002 September 2002 March 2004 June 2004 Changes Initial release REXX code replaced with load modules Fixed 0C4 abend. Users need to reapply the updated usermod Fixed abend code 4, and remove spurious WTOs. Repackage offering and extend support to latest version Supports V530 and V531 plus fixes from beta testing v

Preface This latest version of the support pack has been repackaged and now supports all releases of WebsphereMQ for z/os from version 5.2 to version 5.3.1. This means that support for shared persistent messages is now included. The support pack no longer requires a usermod to be applied as the enhancements are shipped as part of a modified CSQ1LOGP program. Please note that this support pack includes significant revisions to functionality and samples compared to earlier releases and as such a thorough review of the documentation should be undertaken. vi

Bibliography MQSeries for OS/390 System Administration Guide Version 5 Release 2. IBM Corporation SC34-5652-00 vii

Chapter 1. What is provided Introduction This SupportPac extends the log print utility, by providing two additional functions. The first creates one or more datasets from the messages in the MQSeries log datasets. Typical uses of the data include 1. Reviewing which persistent messages were put or got to a queue and whether the request was committed. This allows messages to be replayed. A C program is provided which puts messages to the same queue as they were originally put to. Note putting messages to system queues can cause problems such as duplicate messages. 2. Reviewing persistent messages that were put or got, but the request was backed out. 3. Displaying which applications backed out rather than committed 4. Identifying the volume of data through queues, to identify the high use queues. The second function creates a file of creation and changes to MQSeries objects from information recorded in the log data sets. Typical uses include identifying which applications set object attributes, and recreating object definitions for recovery purposes after a major failure. Additional materials with this SupportPac Included in the SupportPac are two partitioned data sets that contains the programs to extract the log records, a C program to replay messages, and supporting JCL. There are two files called mo12.loa and mo12.pds contained in mo12.zip. These files need to be transferred to the destination TSO system as sequential binary file with a record format of FB 0. Send mo12.loa to TSO with a name MO12.LOADSEQ. Send mo12.pds to TSO with a name MO12.PDSSEQ. Use one of the following methods to accomplish this: To send them via ftp ensure the BINARY option is set then use the following commands site fixrecfm 0 (optional) Put MO12.PDS MO12.PDSSEQ With Personal Communications, use the Send Files to Host option under the Transfer menu item to transmit to TSO PC File MO12.PDS Host File MO12.PDSSEQ Transfer Type PDS The Transfer type of pds may need to be correctly Setup. To do this, use the Setup, Define Transfer Types option under the Transfer menu item and create the pds type with the ASCII, CRLF and Append checkboxes all unselected, the Fixed radio button selected and the LRECL set to 0. Repeat with the MO12.LOA file. On TSO, issue the command:receive indsname(mo12.pdsseq) to unload the sequential files into a TSO partitioned dataset. When prompted for a filename, reply: dsn(mo12.pds) 1

This PDS contains the following members: For message extraction and replay README CSQ4LOGD CSQ4LOGS Information on how to run the modified CSQ1LOGP utility A C header file which maps the record header Sample C program source which reads a file and replays messages CSQ4LOGJ COUNT JCL to run the example C program to replay messages This contains a JCL example of how to count the number of bytes put to a queue For extracting information about changes to objects CSQ1LOGP CMDS JCL to run the modified CSQ1LOGP utility JCL to create a file for input to CSQUTIL. On TSO, issue the command: receive indsname(mo12.loadseq) to unload the sequential files into a TSO partitioned dataset. When prompted for a filename, reply: dsn(mo12.load) This PDS contains the following member: CSQ1LOGP This is a modified version of the CSQ1LOGP program that is shipped with the base product. It is advised that you do *NOT* replace the product version but run this modified version from a private library. CSQ1LOGP can use active logs (if the queue manager is not running) or archive logs. You can select a subset of the data to be processed, for example an RBA range or updates to a particular page set. See the System Administration Guide for instructions on how to use CSQ1LOGP. Sample JCL is given in member CSQ1LOGP of the MO12.PDS. The processing is as follows. 1. CSQ1LOGP reads the specified log data sets and passes the records to an extract interface. For records that match the specified filters a table is built up of units of work and messages processed by the unit of work. 2. When a commit or a backout request is found then the information for that unit of work is written to a file. The file used depends on the request. a. For a commit requests then if the file CSQCMT is present then the data is written to this file. If the file CSQBOTH is present the data is also written to this file. b. For a backout request, if the file CSQBACK is present then the data is written to this file, if the file CSQBOTH is present then the data is also written to this file. There is a flag in the data to indicate if it was written for a commit or a backout request. 3. When changes to objects are detected then the information is written to the file CSQOBJS. 4. When the last record has been processed, information about remaining units of work is written to the file CSQINFLT. The optional JCL statements needed for a CSQ1LOGP job are 2

CSQCMT CSQBACK CSQBOTH CSQINFLT CSQOBJS This contains records for Units of Work which were committed This contains records for Units of Work which were backed out This contains records for Units of Work which were committed or backed out. There is a field which defines whether the record was committed our backed out This contains records for Units of Work which were inflight at the end of the processing This contains records for objects that were created, or altered, or were changed using MQSET The files have the following attributes 1. Record format VB 2. Record length 32756 3. Block size 32760 If you do not want the output files then omit the DD definition. 3

The following figure shows the flow of data Archive log Active log CSQ1LOGP Committed Back out & Committed Back out Inflight Abends If an internal error is detected, CSQ1LOGP will issue a S5C6 abend with a unique abend code. If this happens, please report the abend and reason code to the author of this support pac. Record layout for the data sets The files contain information about persistent messages. Messages are identified by their queue name and an eight character key. Once a message has been got, the key can be reused by another message, so it is important to ensure that time sequence is maintained. In the records are times. A time stamp can only be extracted from a Begin-UR record or from an MQPUT request. Thus if there is only a long running transaction which is getting messages, the times when the gets occurred will all be the time the transaction started (the Begin-UR record). If there are many short units of work, or many messages being put, the time is reasonably accurate (milliseconds), otherwise the times will become less and less accurate. The information in the files has the following layout: (Note there is a 4 byte Record Descriptor Word at the front of each record because the files are Variable Blocked format). Name Position (dec) Length (dec) Description Date 1 The date in format yyyy.ddd in EBCDIC Time 10 12 The approximate time(time-now) in hh:mm:ss.tttmmm format in EBCDIC Time delta 22 7 Approximate time difference in milliseconds from the start of the unit of work in EBCDIC STCK 29 byte STCK format of the time-now urid 37 6 RID of start unit of work. 43 12 Reserved Userid 55 Userid 4

UOWSTCK 65 STCK of start of Unit of work 71 Reserved Jobtype 79 One of BATCH, RRSBATCH, IMS, CICS, CHIN or nulls for an internal task Jobname 7 URLOC 95 3 Where did URID information come from - BUR for begin ur or 'CP ' for from checkpoint information Data length 9 4 Length of the message data(if any) 102 4 Reserved Queue name 106 4 Name of queue, for get, put or expired messages 154 12 Reserved Message Key 166 Information to identify the message. This is present when the queue name is non blank Verb 174 Text description of activity ALTER - when objects are changed DEFINE - when Objects are created MQGET MQPUT EXPIRE - the message expired ABORT2 - the message was backed out PHASE1 - the first phase of two phase commit PHASE2 - the second phase of two phase commit, or the only phase of one phase commit. Status 12 1 Status of unit of work B Backed out C Committed I Inflight Record Type 13 1 Type of log record N - Normal log record S - Special log record (IGNORE THIS RECORD TYPE) Record RBA 14 6 RBA of the log record that generated this output record 190 6 Reserved Segment 196 4 For a put the message is stored in segments, this field is the message segment number starting from 1. For a get of a message this is 0. It is also 0 if the message has expired. * 200 * Message data part BorA 200 1 B or A for commands to indicate the Before definition or the After definition Command 201 * Variable part of record. Length specified by segment content 5

Replay messages MO12.PDS contains a C program that can be used to replay the messages. This has been changed from the previous version to support the new record layout This program reads an output file from CSQ1LOGP, such as CSQCMT, rebuilds the messages and issues MQPUT1 to put the message to the specified queue. The member CSQ4LOGS contains the C program source and CSQ4LOGJ the JCL to run it. The program uses CSQ4LOGD, also in the PDS, which defines the record layout of the output datasets. The JCL to run this program is in member CCPRUN in the PDS. Count the number of bytes put to each queue The following JCL will use DFSORT facilities to process the file from the rexx program to add up the number of bytes put to each queue. This is in member COUNT of the PDS. //TOOLRUN EXEC PGM=ICETOOL,REGION=1024K //TOOLMSG DD SYSOUT=* //DFSMSG DD SYSOUT=* //TOOLIN DD * SORT FROM(IN) TO(TEMP1) USING(CTL1) DISPLAY FROM(TEMP1) LIST(OUT1) ON(5,4,CH) ON(53,4,BI) //CTL1CNTL DD * * Select the records which were put INCLUDE COND=(174,5,CH,EQ,C'MQPUT') * Sort by queue name SORT FIELDS=(106,4,CH,A) * Only copy the queue name and size of user data to output record OUTREC FIELDS=(1,4,106,4,104,4) * Add up the number of bytes procesed SUM FIELDS=(104,4,FI) //IN DD DISP=SHR,DSN=PAICE.CMT //TEMP1 DD DISP=(NEW,PASS),DSN=&TEMP1,SPACE=(CYL,(50,10)) //OUT1 DD SYSOUT=* This produces output like: BA1 BA10 BA2 BA3 BA4 BA5 BA6 BA7 BA BA9 SYSTEM.ADMIN.CHANNEL.EVENT SYSTEM.ADMIN.QMGR.EVENT SYSTEM.CHANNEL.SYNCQ 3605616 357232 3612624 3579336 357232 3491736 357400 3532032 357754 3539040 16120 34 464312 6

Extracting changes to objects This version of the support pack no longer formats the DEFINE and ALTER commands. The sample C program, CSQ4LOGS, provided a report on all DEFINE and ALTER requests that were encountered in the logs. For DEFINE requests the name and type of objected defined is reported. For alter requests a comparision of the before and after image is performed to determine the location of the change. The first 20 characters of the before and after images is reported in display and hex format along with the segment number and offset. Running CSQ1LOGP The CSQ1LOGP program has been modified to perform the log extraction without the need to apply a usermod. In order to create the extracted files the following must be performed: 1. Use the standard CSQ1LOGP syntax to specify the log range to be extracted. This should be in the format specified in the WebsphereMQ System Administration Guide SC34-6053-01. 2. In addition to the published syntax the EXTRACT(YES) keyword should be specified to invoke the extraction routines. 3. DD statements for required extract files. Member CSQ1LOGP in the PDS dataset contains sample JCL to iinvoke the extract routines and generate each of the five output files. Running CSQ4LOGS The source code of the CSQ4LOGS program can be found in the PDS dataset. A compiled, ready to run version, is also available in the LOAD library. Member CSQ4LOGJ contains sample JCL to run the CSQ4LOGS sample program. Known errors This version of the support pack contains the following known errors: 1) Defines of large objects, such as namelists and certain channels, are not being written to the CSQOBJS dataset. This will be corrected in the next release. End of Document 7