542 lines
13 KiB
HTML
542 lines
13 KiB
HTML
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||
|
<html>
|
||
|
<head>
|
||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||
|
<meta name="Copyright" content="Copyright (c) 2006 by IBM Corporation">
|
||
|
<title>Add Collector Notification (QypsAddCollectorNotification) API</title>
|
||
|
<!-- Begin Header Records ========================================== -->
|
||
|
<!-- All rights reserved. Licensed Materials Property of IBM -->
|
||
|
<!-- US Government Users Restricted Rights -->
|
||
|
<!-- Use, duplication or disclosure restricted by -->
|
||
|
<!-- GSA ADP Schedule Contract with IBM Corp. -->
|
||
|
<!-- Change History: -->
|
||
|
<!-- YYMMDD USERID Change description -->
|
||
|
<!-- Edited by Kersten Feb 2002 -->
|
||
|
<!-- Created by Bill Lynch for V5R2 -->
|
||
|
<!-- End Header Records -->
|
||
|
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
|
||
|
</head>
|
||
|
<body>
|
||
|
<a name="Top_Of_Page"></a>
|
||
|
<!--java sync-link -->
|
||
|
<script type="text/javascript" language="javascript" src="../rzahg/synch.js">
|
||
|
</script>
|
||
|
|
||
|
<h2>Add Collector Notification (QypsAddCollectorNotification) API</h2>
|
||
|
|
||
|
<div class="box" style="width: 80%;">
|
||
|
<br>
|
||
|
Required Parameter Group:<br>
|
||
|
<!-- iddvc RMBR -->
|
||
|
<br>
|
||
|
<table width="100%">
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="10%">1</td>
|
||
|
<td align="left" valign="top" width="50%">Collector name</td>
|
||
|
<td align="left" valign="top" width="20%">I</td>
|
||
|
<td align="left" valign="top" width="20%">Char(10)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">2</td>
|
||
|
<td align="left" valign="top">Qualified data queue name</td>
|
||
|
<td align="left" valign="top">I</td>
|
||
|
<td align="left" valign="top">Char(20)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">3</td>
|
||
|
<td align="left" valign="top">Notification type</td>
|
||
|
<td align="left" valign="top">I</td>
|
||
|
<td align="left" valign="top">Binary(4)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">4</td>
|
||
|
<td align="left" valign="top">Category list</td>
|
||
|
<td align="left" valign="top">I</td>
|
||
|
<td align="left" valign="top">Array of Char(10)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">5</td>
|
||
|
<td align="left" valign="top">Category count</td>
|
||
|
<td align="left" valign="top">I</td>
|
||
|
<td align="left" valign="top">Binary(4)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">6</td>
|
||
|
<td align="left" valign="top">Error Code</td>
|
||
|
<td align="left" valign="top">I/O</td>
|
||
|
<td align="left" valign="top">Char(*)</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
Service Program Name: QYPSCOLL<br>
|
||
|
<!-- iddvc RMBR -->
|
||
|
<br>
|
||
|
Default Public Authority: *EXCLUDE<br>
|
||
|
<!-- iddvc RMBR -->
|
||
|
<br>
|
||
|
Threadsafe: Yes<br>
|
||
|
<!-- iddvc RMBR -->
|
||
|
<br>
|
||
|
</div>
|
||
|
|
||
|
<p>The Add Collector Notification (QypsAddCollectorNotification) API registers
|
||
|
with a collector to provide notifications to a specified data queue for a
|
||
|
collection event. A collection event occurs when:</p>
|
||
|
|
||
|
<ul>
|
||
|
<li>The collector cycle interval is reached.</li>
|
||
|
|
||
|
<li>The collector is ended.</li>
|
||
|
|
||
|
<li>The default data collection interval is reached.</li>
|
||
|
</ul>
|
||
|
|
||
|
<p>When a collector is ended, notifications are removed. When a collector is
|
||
|
started, no notifications are registered.</p>
|
||
|
|
||
|
<br>
|
||
|
|
||
|
|
||
|
<h3>Authorities and Locks</h3>
|
||
|
|
||
|
<dl>
|
||
|
<dt><em>API Public Authority</em></dt>
|
||
|
|
||
|
<dd>*EXCLUDE<br>
|
||
|
<br>
|
||
|
</dd>
|
||
|
|
||
|
<dt><em>Data Queue Authority</em></dt>
|
||
|
|
||
|
<dd>*CHANGE<br>
|
||
|
<br>
|
||
|
</dd>
|
||
|
|
||
|
<dt><em>Library Authority</em></dt>
|
||
|
|
||
|
<dd>*EXECUTE<br>
|
||
|
<br>
|
||
|
</dd>
|
||
|
</dl>
|
||
|
|
||
|
<br>
|
||
|
|
||
|
|
||
|
<h3>Required Parameter Group</h3>
|
||
|
|
||
|
<dl>
|
||
|
<dt><strong>Collector name</strong></dt>
|
||
|
|
||
|
<dd>INPUT; CHAR(10)
|
||
|
|
||
|
<p>The name of the collector that is adding a notification. One of these
|
||
|
special values must be used:</p>
|
||
|
|
||
|
<table cellpadding="5">
|
||
|
<!-- cols="10 90" -->
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>*PFR</em></td>
|
||
|
<td align="left" valign="top">Performance Collector</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Qualified data queue name</strong></dt>
|
||
|
|
||
|
<dd>INPUT; CHAR(20)
|
||
|
|
||
|
<p>The data queue used to send the event notification. The first ten characters
|
||
|
contain the data queue name, and the second ten characters contain the data
|
||
|
queue library name. The data queue must already exist, and the user profile
|
||
|
running the API must have *CHANGE authority to it. You can use these special
|
||
|
values for the library name:</p>
|
||
|
|
||
|
<table cellpadding="5">
|
||
|
<!-- cols="15 85" -->
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>*CURLIB</em></td>
|
||
|
<td align="left" valign="top">The job's current library.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>*LIBL</em></td>
|
||
|
<td align="left" valign="top">The library list.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Notification type</strong></dt>
|
||
|
|
||
|
<dd>INPUT; BINARY(4)
|
||
|
|
||
|
<p>Notification is to be sent to the specified data queue when one of these
|
||
|
events occur:</p>
|
||
|
|
||
|
<table cellpadding="5">
|
||
|
<!-- cols="5 95" -->
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>0</em></td>
|
||
|
<td align="left" valign="top">Collector - notify when a cycle, end, or interval
|
||
|
event occurs.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>1</em></td>
|
||
|
<td align="left" valign="top">Cycle - notify when the collection cycle interval
|
||
|
occurs.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>2</em></td>
|
||
|
<td align="left" valign="top">End - notify when the collection is ended.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>3</em></td>
|
||
|
<td align="left" valign="top">Interval - notify when the collection interval
|
||
|
occurs.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>4</em></td>
|
||
|
<td align="left" valign="top">Category - notify when the category interval
|
||
|
occurs.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p>For more information on the format of the notification record, see <a href=
|
||
|
"#NOTIFICATION">Notification Record Format</a>.</p>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Category list</strong></dt>
|
||
|
|
||
|
<dd>INPUT; ARRAY OF CHAR(10)
|
||
|
|
||
|
<p>List of category names, for which notification is to be sent. This field is
|
||
|
only applicable when Notification type is set to category notification (4).
|
||
|
Category name can be a system-defined category name or a user-defined category
|
||
|
name.</p>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>System-defined category name</strong></dt>
|
||
|
|
||
|
<dd>A 10 character name of a system-defined category. For the *PFR collector
|
||
|
system-defined categories are:<br>
|
||
|
<br>
|
||
|
<ul>
|
||
|
<li>*APPN
|
||
|
</li>
|
||
|
|
||
|
<li>*CMNBASE
|
||
|
</li>
|
||
|
|
||
|
<li>*CMNSAP
|
||
|
</li>
|
||
|
|
||
|
<li>*CMNSTN
|
||
|
</li>
|
||
|
|
||
|
<li>*DISK
|
||
|
</li>
|
||
|
|
||
|
<li>*HDWCFG
|
||
|
</li>
|
||
|
|
||
|
<li>*IOPBASE
|
||
|
</li>
|
||
|
|
||
|
<li>*IPCS
|
||
|
</li>
|
||
|
|
||
|
<li>*JOBMI
|
||
|
</li>
|
||
|
|
||
|
<li>*JOBOS
|
||
|
</li>
|
||
|
|
||
|
<li>*LCLRSP
|
||
|
</li>
|
||
|
|
||
|
<li>*POOL
|
||
|
</li>
|
||
|
|
||
|
<li>*POOLTUNE
|
||
|
</li>
|
||
|
|
||
|
<li>*SNA
|
||
|
</li>
|
||
|
|
||
|
<li>*SNADS
|
||
|
</li>
|
||
|
|
||
|
<li>*SUBSYSTEM
|
||
|
</li>
|
||
|
|
||
|
<li>*SYSBUS
|
||
|
</li>
|
||
|
|
||
|
<li>*SYSCPU
|
||
|
</li>
|
||
|
|
||
|
<li>*SYSLVL
|
||
|
</li>
|
||
|
|
||
|
<li>*TCPBASE
|
||
|
</li>
|
||
|
|
||
|
<li>*TCPIFC
|
||
|
</li>
|
||
|
|
||
|
<li>*USRTNS
|
||
|
</li>
|
||
|
</ul><br><br>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Registered user-defined category name</strong></dt>
|
||
|
|
||
|
<dd>A 10 character name of a user-defined category registered by the Register
|
||
|
Collector Data Category (QypsRegCollectorDataCategory) API.<br>
|
||
|
<br>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Category count</strong></dt>
|
||
|
|
||
|
<dd>INPUT; BINARY(4)
|
||
|
|
||
|
<p>The number of categories entered in input field Category list. This field is
|
||
|
only applicable when Notification type is set to category notification (4).
|
||
|
Category count must have a value of '0' when Notification type is not a
|
||
|
category notification (4).</p>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Error code</strong></dt>
|
||
|
|
||
|
<dd>I/O; CHAR(*)
|
||
|
|
||
|
<p>The structure in which to return error information. For the format of the
|
||
|
structure, see <a href="../apiref/error.htm#hdrerrcod">Error Code Parameter</a>.</p>
|
||
|
</dd>
|
||
|
</dl>
|
||
|
|
||
|
<br>
|
||
|
<h3>Usage Notes</h3>
|
||
|
|
||
|
<p>An application uses the Add Collector Notification
|
||
|
(QypsAddCollectorNotification) API to start receiving notifications about
|
||
|
collector events. The collector sends notifications using the data queue. The
|
||
|
application program has to create a data queue and pass the qualified name of
|
||
|
this data queue to the Add Collector Notification
|
||
|
(QypsAddCollectorNotification) API. The collector sends notification messages
|
||
|
or records to the specified data queue. The format of the notification records
|
||
|
is shown below. The application program is responsible for reading and removing
|
||
|
entries from the data queue.</p>
|
||
|
|
||
|
<p>When the application no longer needs to receive notifications from the
|
||
|
collector, it uses the Remove Collector Notification
|
||
|
(QypsRmvCollectorNotification) API.</p>
|
||
|
|
||
|
<p>The application is responsible for cleaning up the data queue.</p>
|
||
|
|
||
|
<h3><a name="NOTIFICATION">Notification Record Format</a></h3>
|
||
|
|
||
|
<p>For detailed descriptions of the fields in this table, see <a href=
|
||
|
"#NOTFIELD">Notification Record Field Descriptions</a>.</p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th align="center" valign="bottom" colspan="2">Offset</th>
|
||
|
<th align="left" valign="bottom" rowspan="2">Type</th>
|
||
|
<th align="left" valign="bottom" rowspan="2">Field</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<th align="center" valign="bottom">Dec</th>
|
||
|
<th align="center" valign="bottom">Hex</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="10%">0</td>
|
||
|
<td align="center" valign="top" width="10%">0</td>
|
||
|
<td align="left" valign="top" width="20%">Char(10)</td>
|
||
|
<td align="left" valign="top" width="60%">Entry type</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">10</td>
|
||
|
<td align="center" valign="top">A</td>
|
||
|
<td align="left" valign="top">Char(2)</td>
|
||
|
<td align="left" valign="top">Entry identifier</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">12</td>
|
||
|
<td align="center" valign="top">C</td>
|
||
|
<td align="left" valign="top">Char(10)</td>
|
||
|
<td align="left" valign="top">Collection object name</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">22</td>
|
||
|
<td align="center" valign="top">16</td>
|
||
|
<td align="left" valign="top">Char(10)</td>
|
||
|
<td align="left" valign="top">Library name</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">32</td>
|
||
|
<td align="center" valign="top">20</td>
|
||
|
<td align="left" valign="top">Char(8)</td>
|
||
|
<td align="left" valign="top">Sequence identifier</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">40</td>
|
||
|
<td align="center" valign="top">28</td>
|
||
|
<td align="left" valign="top">Char(10)</td>
|
||
|
<td align="left" valign="top">Category</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">50</td>
|
||
|
<td align="center" valign="top">32</td>
|
||
|
<td align="left" valign="top">Char(40)</td>
|
||
|
<td align="left" valign="top">Reserved</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
<br>
|
||
|
|
||
|
|
||
|
<h3><a name="NOTFIELD">Notification Record Field Descriptions</a></h3>
|
||
|
|
||
|
<p><strong>Category</strong> The category associated with the
|
||
|
notification. This field is only applicable when the notification event
|
||
|
specified in Entry identifier is set to category notification ('04').</p>
|
||
|
|
||
|
<p><strong>Collection object name</strong> The name of the
|
||
|
collection object where any data collected was placed. This name is generated
|
||
|
when the collector starts , and is of the form QDDDHHMMSS.</p>
|
||
|
|
||
|
<p><strong>Entry identifier</strong> The notification event that
|
||
|
occurred. Values are:</p>
|
||
|
|
||
|
<table cellpadding="5">
|
||
|
<!-- cols="10 90" -->
|
||
|
<tr>
|
||
|
<td align="left" valign="top" nowrap><em>'01'</em></td>
|
||
|
<td align="left" valign="top">Cycle - a collection cycle interval
|
||
|
occurred.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'02'</em></td>
|
||
|
<td align="left" valign="top">End - a collection has ended.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'03'</em></td>
|
||
|
<td align="left" valign="top">Interval - a collection interval occurred.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'04'</em></td>
|
||
|
<td align="left" valign="top">Category - a category collection interval
|
||
|
occurred.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Entry type</strong> The type of this data queue entry.
|
||
|
Set to value '*COLNOT '.</p>
|
||
|
|
||
|
<p><strong>Library name</strong> The name of the library containing
|
||
|
the collection object for which the event occurred.</p>
|
||
|
|
||
|
<p><strong>Reserved</strong> This space is reserved for possible
|
||
|
future use.</p>
|
||
|
|
||
|
<p><strong>Sequence identifier</strong> A unique identifier
|
||
|
assigned to this collection event. Its format is based on the time since the
|
||
|
collector was started in the format DDHHMMSS , where 00000000 represents the
|
||
|
time the collector was started.</p>
|
||
|
|
||
|
<h3>Error Messages</h3>
|
||
|
|
||
|
<table width="100%" cellpadding="5">
|
||
|
<!-- cols="15 85" -->
|
||
|
<tr>
|
||
|
<th align="left" valign="top">Message ID</th>
|
||
|
<th align="left" valign="top">Error Message Text</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td width="15%" valign="top">CPF3C1E E</td>
|
||
|
<td width="85%" valign="top">Required parameter &1 omitted.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top">CPF3C3C E</td>
|
||
|
<td align="left" valign="top">Value for parameter &1 not valid.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top">CPF3CF2 E</td>
|
||
|
<td align="left" valign="top">Error(s) occurred during running of &1
|
||
|
API.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top">CPF9801 E</td>
|
||
|
<td align="left" valign="top">Object &2 in library &3 not found.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top">CPF9802 E</td>
|
||
|
<td align="left" valign="top">Not authorized to object &2 in &3.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top">CPF9810 E</td>
|
||
|
<td align="left" valign="top">Library &1 not found.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top">CPF9820 E</td>
|
||
|
<td align="left" valign="top">Not authorized to use library &1.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top">CPFB94A E</td>
|
||
|
<td align="left" valign="top">Collector communications error. Reason code
|
||
|
&1.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
|
||
|
|
||
|
<hr>
|
||
|
<p>Introduced: V5R2</p>
|
||
|
|
||
|
<hr>
|
||
|
<table cellpadding="2" cellspacing="2" align="center">
|
||
|
<tr align="center">
|
||
|
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href=
|
||
|
"perfmgmt.htm">Performance Management</a> | <a href="aplist.htm">APIs by category</a></td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
</body>
|
||
|
</html>
|
||
|
|