監視の開始 (STRWCH)

監視の開始(STRWCH)コマンドは,イベントの監視機能を開始します。この機能は,指定されたイベント(メッセージ,LICログ項目またはPAL項目)が発生したときに,ユーザーが指定したプログラムを呼び出すことによって,イベントの発生をユーザーに通知します。PALはPRODUCT ACTIVITY LOG(プロダクト活動ログ)の略であり,(ディスク装置やテープ装置,通信,ワークステーションなどで)発生したエラーを示します。

一時点では最大10000の監視セッションを活動状態にすることができますが,活動状態の監視セッションIDはシステム間で固有でなければなりません。

監視セッションは,監視終了(ENDWCH)コマンドか監視終了(QSCEWCH) APIによって終了されるまで続行します。監視セッションは,同じジョブから,または別のジョブから終了することができます。

制約事項:

パラメーター

キーワード 記述 選択項目 ノーツ
SSNID セッションID 名前, *GEN 必須, 定位置 1
WCHPGM 監視プログラム 修飾オブジェクト名 必須, 定位置 2
修飾子 1: 監視プログラム 名前
修飾子 2: ライブラリー 名前, *LIBL, *CURLIB
CALLWCHPGM 監視プログラムの呼び出し 単一値: *WCHEVT
その他の値 (最大 2 回の繰り返し): *STRWCH, *ENDWCH
オプショナル
WCHMSG メッセージの監視 単一値: *NONE
その他の値 (最大 5 回の繰り返し): 要素リスト
オプショナル
要素 1: 監視するメッセージ 総称名, 名前, *ALL, *IMMED
要素 2: 比較データ 文字値, *NONE
要素 3: 比較対象 *MSGDTA, *FROMPGM, *TOPGM
要素 4: MSG タイプ *ALL, *COMP, *DIAG, *ESCAPE, *INFO, *INQ, *NOTIFY, *SCOPE, *STATUS
要素 5: 比較演算子 *GE, *EQ, *GT, *LT, *LE
要素 6: 重大度コード 0-99, 00
WCHMSGQ 監視されたメッセージ待ち行列 値 (最大 3 回の繰り返し): 要素リスト オプショナル
要素 1: MSG 待ち行列 単一値: *SYSOPR, *JOBLOG, *HSTLOG
その他の値: 修飾オブジェクト名
修飾子 1: MSG 待ち行列 名前
修飾子 2: ライブラリー 名前, *LIBL
WCHJOB 監視されたジョブ 単一値: *
その他の値 (最大 5 回の繰り返し): 要素リスト
オプショナル
要素 1: ジョブ名 修飾ジョブ名
修飾子 1: ジョブ名 総称名, 名前, *ALL
修飾子 2: ユーザー 総称名, 名前, *ALL
修飾子 3: 番号 000000-999999, *ALL
WCHLICLOG LICログ項目の監視 単一値: *NONE
その他の値 (最大 5 回の繰り返し): 要素リスト
オプショナル
要素 1: メジャー コード 文字値, *ALL
要素 2: マイナー コード 文字値, *ALL
要素 3: 比較データ 文字値, *NONE
要素 4: 比較対象 *ALL, *TDENBR, *TASKNAME, *SVRTYPE, *JOBNAME, *JOBUSR, *JOBNBR, *THDID, *EXCPID, *MODNAME, *MODRUNAME, *MODEPNAME, *MODOFFSET, *MODTSP
WCHPAL PAL項目の監視 単一値: *NONE
その他の値 (最大 5 回の繰り返し): 要素リスト
オプショナル
要素 1: システム参照コード 文字値, *ALL
要素 2: 比較データ 文字値, *NONE
要素 3: 比較対象 *RSCNAME, *RSCTYPE, *RSCMODEL
RUNPTY 実行優先順位 1-99, 25 オプショナル

セッションID (SSNID)

この監視のセッションIDを指定します。このIDは,システム上のすべての活動監視間で固有でなければなりません。

これは必須パラメーターです。

*GEN
システムがこの監視の固有のセッションIDを生成します。
名前
この監視のセッションIDを指定します。「QSC」で始まるセッションIDを指定することはできません。

監視プログラム (WCHPGM)

指定された監視イベントが発生したことを通知するために,呼び出し先のユーザー出口プログラムを指定します。出口プログラムは,このコマンドに指定された各メッセージ,LICログ項目,およびPAL項目ごとに1度呼び出されます。すなわち,メッセージがメッセージ待ち行列およびジョブ・ログで監視される場合で,この両方の場所にそのメッセージが送られた場合は,出口プログラムは2度呼び出されることになります。

これは必須パラメーターです。

監視プログラムは,次の場合に呼び出されます。

監視プログラムに関連して3つの入力パラメーターと1つの出力パラメーターがあります。この4つのパラメーターは必須です。

1   監視オプション設定   入力  CHAR(10)
2   セッションID         入力  CHAR(10)
3   エラー検出           出力  CHAR(10)
4   イベント・データ     入力  CHAR(*)

「監視オプション設定」パラメーターで許可される値は次の通りです。

*MSGID
メッセージIDまたは即時メッセージ,メッセージ・タイプ,メッセージ重大度とWCHMSGパラメーターに指定された関連する比較データが一致した。
*LICLOG
LICログとWCHLICLOGパラメーターに指定された関連する比較データが一致した。
*PAL
WCHPALパラメーターに指定されたプロダクト活動ログ(PAL)および関連する比較データの一致が発生した。
*STRWCH
監視プログラムは,イベントの監視を開始する前に呼び出されます。
*ENDWCH
監視プログラムは,監視セッションが終了するときに呼び出されます。考えられる理由は次のとおりです。
  • 監視の終了(ENDWCH)コマンドまたは監視の終了(QSCEWCH) APIが発行された。
  • 1つ以上のイベント監視ジョブが異常終了したか,ユーザー処置によって終了させられた。

:監視セッションは,監視出口プログラムでエラーが検出されたために終了することもあります。その場合,監視プログラムは*ENDWCH時に呼び出されません。

「セッションID」パラメーターには,ユーザー出口プログラムを呼び出している監視セッションの名前が入れられます。

「エラーの検出」パラメーターで許可される値は次の通りです。

*ERROR
監視出口プログラムによって検出されたエラー。セッションIDパラメーターで渡された監視セッションは終了します。終了される監視セッションで複数のメッセージ,LICログ項目,またはPAL項目が指定されていた場合,それらはすべて監視されなくなります。監視セッション終了の原因となった出口プログラム内でのエラーを示すCPI3999メッセージがジョブ・ログおよびヒストリー・ログに送られます。
<ブランク>
監視出口プログラムによって検出されたエラーはありません。

:

「監視オプション設定」パラメーターに*MSGIDが指定された時に「イベント・データ」パラメーターで許可される値は次の構造となります。

オフセット タイプ       フィールド
DEC HEX
  0    0   BINARY(4)    監視情報の長さ
  4    4   CHAR(7)      監視されるメッセージ
 11    B   CHAR(1)      予約済み
 12    C   CHAR(10)     メッセージ待ち行列名
 22   16   CHAR(10)     メッセージ待ち行列ライブラリー
 32   20   CHAR(10)     ジョブ名
 42   2A   CHAR(10)     ユーザー名
 52   34   CHAR(6)      ジョブ番号
 58   3A   BINARY(4)    元の置換データ長
 62   3E   CHAR(256)    送信プログラム名
318  13E   CHAR(10)     送信モジュール名
328  148   BINARY(4)    送信プロシージャー名へのオフセット
332  14C   BINARY(4)    送信プロシージャー名の長さ
336  150   CHAR(10)     受信プログラム名
346  15A   CHAR(10)     受信モジュール名
356  164   BINARY(4)    受信プロシージャー名へのオフセット
360  168   BINARY(4)    受信プロシージャー名の長さ
364  16C   BINARY(4)    メッセージ重大度
368  170   CHAR(10)     メッセージ・タイプ
378  17A   CHAR(8)      メッセージのタイム・スタンプ
386  182   CHAR(4)      メッセージ・キー
390  186   CHAR(10)     メッセージ・ファイル名
400  190   CHAR(10)     メッセージ・ファイル・ライブラリー
410  19A   CHAR(2)      予約済み
412  19C   BINARY(4)    比較データへのオフセット
416  1A0   BINARY(4)    比較データの長さ
420  1A4   CHAR(10)     比較対象
430  1AE   CHAR(2)      予約済み
432  1B0   BINARY(4)    比較データのCCSID
436  1B4   BINARY(4)    比較データが見つからない位置のオフセット
440  1B8   BINARY(4)    置換データへのオフセット
444  1BC   BINARY(4)    置換データの長さ
448  1C0   BINARY(4)    置換データのCCSID
452  1C4   CHAR(10)     送信ユーザー・プロファイル
462  1CE   CHAR(10)     ターゲットのジョブ名
472  1D8   CHAR(10)     ターゲットのジョブ・ユーザー名
482  1E2   CHAR(6)      ターゲットのジョブ番号
 *   *     CHAR(*)      送信プロシージャー名
 *   *     CHAR(*)      受信プロシージャー名
 *   *     CHAR(*)      メッセージ比較データ
 *   *     CHAR(*)      メッセージ置換データ

「監視オプション設定」パラメーターに*LICLOGが指定された時に「イベント・データ」パラメーターで許可される値は次の構造となります。

オフセット タイプ       フィールド
DEC HEX
  0    0   BINARY(4)    監視情報の長さ
  4   4    CHAR(4)      LICログ・メジャー・コード
  8   8    CHAR(4)      LICログ・マイナー・コード
 12    C   CHAR(8)      LICログID (PRTINTDTAのキーワードDMPID)
 20   14   CHAR(8)      LICログのタイム・スタンプ
 28   1C   CHAR(8)      TDE番号
 36   24   CHAR(16)     タスク名
 52   34   CHAR(30)     サーバー・タイプ
 82   52   CHAR(2)      例外ID
 84   54   CHAR(10)     LICジョブ名
 94   5E   CHAR(10)     LICユーザー名
104   68   CHAR(6)      LICジョブ番号
110   6E   CHAR(4)      予約済み
114   72   CHAR(8)      スレッドID
122   7A   CHAR(8)      LICモジュールのコンパイル・タイム・スタンプ
130   82   CHAR(8)      LICモジュールのオフセット
138   8A   CHAR(8)      LICモジュールのRU名
146   92   CHAR(48)     LICモジュール名
194   DA   CHAR(128)    LICモジュールの入り口点名
322  142   CHAR(1)      LICログ比較の対象の指定
323  143   CHAR(1)      予約済み
324  144   BINARY(4)    比較データへのオフセット
328  148   BINARY(4)    比較データの長さ
332  14C   CHAR(10)     LICログ比較対象
 *   *     CHAR(*)      LICログ比較データ

「監視オプション設定」パラメーターに*PALが指定された時に「イベント・データ」パラメーターで許可される値は次の構造となります。

オフセット タイプ       フィールド
DEC HEX
  0    0   BINARY(4)    監視情報の長さ
  4    4   CHAR(8)      システム参照コード
 12    C   CHAR(10)     装置名
 22   16   CHAR(4)      装置タイプ
 26   1A   CHAR(4)      型式
 30   1E   CHAR(15)     製造番号
 45   2D   CHAR(10)     資源名
 55   37   CHAR(8)      エラー・ロブID (PRTERRLOGのキーワードERRLOGID)
 63   3F   CHAR(8)      PALタイム・スタンプ
 71   47   CHAR(4)      参照コード
 75   4B   CHAR(8)      2次コード
 83   53   CHAR(8)      テーブルID
 91   5B   CHAR(1)      予約済み
 92   5C   BINARY(4)    順序
 96   60   BINARY(4)    比較データへのオフセット
 100  64   BINARY(4)    比較データの長さ
 104  68   CHAR(10)     PAL比較対象
 *   *     CHAR(*)      PAL比較データ

「監視オプション設定」パラメーターに*STRWCHまたは*ENDWCHが指定された時に「イベント・データ」パラメーターで許可される値は次の構造となります。

オフセット タイプ       フィールド
DEC HEX
  0    0   BINARY(4)    監視情報の長さ
(ここでは常に4)

監視出口プログラム・インターフェースについて詳しくは,IBM i Information Center(http://www.ibm.com/systems/i/infocenter/)の「プログラミング」カテゴリーの「API」トピック・コレクションを参照してください。

修飾子1: 監視プログラム

名前
監視出口プログラムの名前を指定してください。

修飾子2: ライブラリー

*LIBL
最初に一致するものが見つかるまで,ジョブのライブラリー・リスト内のすべてのライブラリーが検索されます。
*CURLIB
プログラムを見つけるために,ジョブの現行ライブラリーが使用されます。ジョブの現行ライブラリーとしてライブラリーが指定されていない場合は,QGPLライブラリーが使用されます。
名前
ユーザー出口プログラムが入っているライブラリーの名前を指定します。

監視プログラムの呼び出し (CALLWCHPGM)

監視プログラム (WCHPGM)パラメーターに指定されたプログラムが呼び出されるタイミングを指定します。プログラムは,監視する対象のイベントの発生時には常に呼び出されます。それに加えてプログラムが呼び出される場合を指定できます。

単一値

*WCHEVT
監視プログラムは,監視する対象のイベントの発生時に呼び出されます。

その他の値(最大2個指定可能)

*STRWCH
監視プログラムは,監視対象イベントの発生時に加えて,イベントの監視を開始する前にも呼び出されます。
*ENDWCH
監視プログラムは,監視対象イベントの発生時に加えて,監視セッションの終了時にも呼び出されます。考えられる理由は次のとおりです。
  • 監視の終了(ENDWCH)コマンドまたは監視の終了(QSCEWCH) APIが発行された。
  • 1つ以上のイベント監視ジョブが異常終了したか,ユーザー処置によって終了させられた。

:監視セッションは,監視出口プログラムでエラーが検出されたために終了することもあります。その場合,監視プログラムは*ENDWCH時に呼び出されません。

メッセージの監視 (WCHMSG)

監視対象となるメッセージを最大5個まで指定します。*NONE以外の値が指定された場合には,メッセージの監視対象の位置を監視されたメッセージ待ち行列 (WCHMSGQ)パラメーターに指定しなければなりません。監視対象メッセージが指定されたメッセージ待ち行列またはログに追加されると,監視出口プログラムが呼び出されます。

注:移動されたメッセージおよび再送されたメッセージは監視されません。メッセージの元のインスタンスのみ監視することができます。

注:メッセージID CPF1124またはCPF1164の監視は(監視処理を行う)ジョブQSCWCHPSでは無視されます。CPF1124またはCPF1164がジョブQSCWCHPSに出された場合,ユーザー出口プログラムは起動されません。

単一値

*NONE
メッセージは監視されません。

要素1: 監視するメッセージ

*ALL
すべてのメッセージが監視されます。これには保管済みのメッセージおよび即時メッセージが含まれます。すべてのメッセージを監視すると,システムのパフォーマンスが低下する可能性があることに注意してください。これは慎重に使用してください。
*IMMED
すべての即時メッセージが監視されます。メッセージ・ファイルに保管されているメッセージは監視されません。
総称名
監視対象となる総称メッセージIDを指定します。総称名は1つ以上の文字の後にアスタリスク(*)を付けた文字ストリング(例えば,ABC*)です。アスタリスクは任意の有効な文字で置き換えられます。総称メッセージ名は,総称接頭部で始まるメッセージIDを持つすべてのメッセージを指定します。
名前
監視対象となる7文字のメッセージIDを指定します。

要素2: 比較データ

指定されたメッセージと一致するメッセージを,指定されたメッセージ待ち行列またはログに追加する場合に使用される比較データを指定します。メッセージ・データ,「FROMプログラム」,または「TOプログラム」に指定されたテキストが含まれる場合は,その監視対象条件が真になります。メッセージ・データの「FROMプログラム」または「TOプログラム」に指定されたテキストが含まれない場合は,監視機能はそのまま続行されます。

*NONE
比較データは指定されません。指定されたメッセージと一致するメッセージが,指定されたメッセージ待ち行列またはログに追加されると,その監視対象条件が真になります。
文字値
監視対象メッセージのメッセージ・データ,「FROMプログラム」または「TOプログラム」と比較するために使用するテキスト・ストリングを指定します。このテキストは大文字小文字の区別が行われ,組み込みまたは末尾ブランクを指定するには引用符を使用することができます。

要素3: 比較対象

要素2に指定された比較データと比較されるメッセージの部分を指定します。

*MSGDATA
比較データは,メッセージ置き換えデータと比較されます。
*FROMPGM
比較データは,メッセージを送信するプログラムの名前あるいはメッセージを送信するプロシージャーが入っているILEプログラムの名前と比較されます。
*TOPGM
比較データは,メッセージの送信先のプログラムの名前,またはメッセージの送信先のプロシージャーを含むILEプログラムの名前と比較されます。

要素4: MSG タイプ

監視対象とするメッセージに割り当てられたメッセージ・タイプを指定します。

*ALL
すべてのメッセージ・タイプが監視されます。これには,完了,コマンド,診断,エスケープ,情報,照会,通知,応答,要求,送信元のコピー,有効範囲,および状況のメッセージ・タイプが含まれます。
*COMP
完了メッセージが監視されます。
*DIAG
診断メッセージが監視されます。
*ESCAPE
エスケープ・メッセージが監視されます。
*INFO
情報メッセージが監視されます。
*INQ
照会メッセージが監視されます。
*NOTIFY
通知メッセージが監視されます。
*SCOPE
有効範囲メッセージが監視されます。
*STATUS
状況メッセージが監視されます。

要素5: 比較演算子

メッセージ重大度コードを比較する比較演算子を1つ指定します。

*GE
より大きいか等しい。
*EQ
等しい。
*GT
より大きい。
*LT
より小さい。
*LE
より小さいか等しい。

要素6: 重大度コード

監視するメッセージの重大度コードを指定します。

00
監視対象とするメッセージに割り当てられた重大度コードは00です。
重大度コード
監視対象メッセージに関連付けられている重大度レベルを00から99までの範囲で指定します。

監視されたメッセージ待ち行列 (WCHMSGQ)

WCHMSGパラメーターに指定されたメッセージを監視する位置を指定します。システム操作員メッセージ待ち行列,ヒストリー・ログ,他のメッセージ待ち行列,およびジョブ・ログに追加しているメッセージの監視を指定することができます。最大3個のメッセージ待ち行列または特殊値を指定することができます。

要素1: MSG 待ち行列

単一値

*SYSOPR
システム操作員メッセージ待ち行列(ライブラリーQSYS中のQSYSOPRメッセージ待ち行列)に追加されるメッセージを監視します。
*JOBLOG
監視されたジョブ (WCHJOB)パラメーターに指定されたジョブのジョブ・ログに追加されるメッセージを監視します。
*HSTLOG
ヒストリー・ログ(ライブラリーQSYS中のQHSTメッセージ待ち行列)に追加されるメッセージを監視します。

修飾子1: MSG 待ち行列

名前
監視したいメッセージ待ち行列の名前を指定します。

修飾子2: ライブラリー

*LIBL
最初に一致するものが見つかるまで,現行スレッドのライブラリー・リスト内のすべてのライブラリーが検索されます。
名前
メッセージ待ち行列が入っているライブラリーの名前を指定してください。

監視されたジョブ (WCHJOB)

メッセージの監視 (WCHMSG)パラメーターに指定されたメッセージについてそのジョブ・ログが監視されるジョブを指定します。*JOBLOGが監視されたメッセージ待ち行列 (WCHMSGQ)パラメーターに指定された場合には,指定されたジョブだけが監視されます。最大5個のジョブ名を指定することができます。

単一値

*
この監視コマンドを出したジョブのジョブ・ログだけが監視されます。

要素1: ジョブ名

修飾子1: ジョブ名

総称名
監視されるジョブの総称名を指定します。総称名は1つ以上の文字の後にアスタリスク(*)を付けた文字ストリング(例えば,ABC*)です。アスタリスクは任意の有効な文字で置き換えられます。総称ジョブ名は,総称接頭部で始まるジョブ名を持つすべてのジョブを指定します。
*ALL
指定されたジョブ・ユーザー名を持つすべてのジョブが監視されます。ジョブ名の*ALLは,ユーザー指定のジョブ・ユーザー名修飾子と一致するすべてのジョブを監視するために,これは総称ジョブ指定と見なされます。
名前
監視されるジョブの名前を指定します。

修飾子2: ユーザー

総称名
監視されるジョブのユーザー名の総称名を指定します。総称名は1つ以上の文字の後にアスタリスク(*)を付けた文字ストリング(例えば,ABC*)です。アスタリスクは任意の有効な文字で置き換えられます。総称ユーザー名は,指定されたジョブ名を持ち,総称接頭部で始まるユーザー名を持つすべてのジョブを指定します。
*ALL
指定されたジョブ名を持つすべてのジョブが監視されます。ジョブ・ユーザー名の*ALLは,ユーザー指定のジョブ名修飾子と一致するすべてのジョブを監視するために,これは総称ジョブ指定と見なされます。
名前
監視されるジョブのユーザー名を指定します。

修飾子3: 番号

*ALL
指定したジョブ名およびユーザー名を持つすべてのジョブが監視されます。ジョブ番号の*ALLは,ユーザー指定のジョブ名およびジョブ・ユーザー名修飾子と一致するすべてのジョブを監視するために,これは総称ジョブ指定と見なされます。
000000から999999
ジョブ名およびユーザー名をさらに修飾するジョブ番号を指定してください。総称ジョブ名修飾子または総称ユーザー名修飾子を指定した場合には,ジョブ番号を指定できません。

LICログ項目の監視 (WCHLICLOG)

監視の対象となる最大5個のライセンス内部コード(LIC)ログ項目IDを指定します。各LICログ項目には,メジャーとマイナーのコードが含まれています。指定されたメジャーとマイナーのコードおよび指定された比較データのどれかと一致するLICログ項目が追加される場合は,条件の監視を満たすことになります。

単一値

*NONE
LICログ項目は監視されません。

要素1: メジャーコード

*ALL
LICログ項目のどのメジャー・コードも一致とは見なされます。*ALLがメジャー・コードに指定された場合は,LICログ項目マイナー・コードに*ALLを指定することはできません。
文字値
監視対象となるLICログ・メジャー・コードを指定します。4桁のコードの各文字に16進数または疑問符のいずれかを指定することができます。疑問符はワイルドカード文字であり,その桁の任意の数字と一致することになります。最大3個のワイルドカード文字を指定することができます。

要素2: マイナーコード

*ALL
LICログ項目のどのマイナー・コードも一致と見なされます。*ALLがマイナー・コードに指定された場合は,LICログ項目メジャー・コードに*ALLを指定することはできません。
文字値
監視対象となるLICログ・マイナー・コードを指定します。4桁のコードの各文字に16進数または疑問符のいずれかを指定することができます。疑問符はワイルドカード文字であり,その桁の任意の数字と一致することになります。最大3個のワイルドカード文字を指定することができます。

要素3: 比較データ

指定されたメジャーとマイナー・コードと一致するログ項目をライセンス内部コード(LIC)ログに追加する場合に,使用する比較データを指定します。このテキストが監視対象ログ項目のLICログ項目データ・フィールド中で検出されない場合には,その監視対象条件が真になります。

*NONE
比較データは指定されません。指定されたメジャーとマイナーのコードと一致するLICログ項目をLICログに追加すると,監視対象条件が真になります。
文字値
監視対象ログ項目の項目データと比較するために使用するテキスト・ストリングを指定します。このテキストが要素4に指定されたLICログ項目データ・フィールド中で検出された場合には,その監視条件が真と見なされます。このテキストは大文字小文字の区別が行われます。LICログ比較対象フィールドに*ALLが指定されている場合,比較されるLICログ・フィールドは,TDE番号,タスク名,サーバー・タイプ,ジョブ名,ユーザーID,ジョブ番号,スレッドID,例外ID, LICモジュール・コンパイル・タイム・スタンプ,LICモジュール・オフセット,LICモジュールRU名,LICモジュール名,LICモジュール入り口点名です。比較データは2つのフィールドにまたがった突き合わせには使用できませんが,フィールド全体またはどれかのフィールドのサブストリングを突き合わせることはできます。

例外IDの監視の時には,例外IDの16進数の4桁すべてを指定しなければなりません。また,例外IDのフィールドに対してのみ比較し,他のフィールドと一致する可能性があるサブストリングは回避したい場合は,接頭部MCHを指定することもできます。

要素4: 比較対象

要素3に指定された比較データと比較されるLICログの部分を指定します。

*ALL
LICログ比較データは,以下で説明するすべてのフィールドと比較されます。
*TDENBR
LICログ比較データは,LICログ項目を要求したタスク・ディスパッチング要素(TDE)の数と比較されます。
*TASKNAME
LICログ比較データは,LICログ項目を要求したタスクの名前と比較されます。LICログ項目がタスクによって要求されていない場合,タスク名はブランク(16進数40)です。
*SVRTYPE
LICログ比較データは,LICログ項目を要求したサーバーのタイプと比較されます。LICログ項目がサーバーによって要求されていない場合,サーバー・タイプはブランク(16進数40)です。
*JOBNAME
LICログ比較データは,LICログ項目を要求したジョブの名前と比較されます。LICログ項目がジョブによって要求されていない場合,LICジョブ名はブランク(16進数40) です。
*JOBUSR
LICログ比較データは,LICログ項目を要求したジョブのユーザー名と比較されます。LICログ項目がジョブによって要求されていない場合,LICユーザー名はブランク(16進数40)です。
*JOBNBR
LICログ比較データは,LICログ項目を要求したジョブのジョブ名とユーザー名をさらに限定するためにジョブ番号(000000-999999)と比較されます。LICログ項目がジョブによって要求されていない場合,LICジョブ番号はブランク(16進数40)です。
*THDID
LICログ比較データは,LICログ項目を要求したスレッドと比較されます。LICログ項目がスレッドによって要求されていない場合,スレッドIDは2進ゼロです。
*EXCPID
LICログ比較データは,LICログ項目を要求する原因となった例外と比較されます。これは,上位1バイトの例外グループ番号と下位1バイトの例外サブタイプ番号を連結することによって作られる2バイトの16進フィールドです。例外の結果としてLICログ項目が要求されない場合,例外IDは2進ゼロです。
*MODNAME
LICログ比較データは,LICログ項目を要求したLICモジュール名と比較されます。モジュール名が64文字を超える場合は,LICモジュール名の65文字目以降が切り捨てられます。
*MODRUNAME
LICログ比較データは,LICモジュール交換装置名と比較されます。LICモジュールRU名は常に大文字EBCDICです。
*MODEPNAME
LICログ比較データは,LICログ項目を要求した入り口点の名前と比較されます。入り口点名が128文字を超える場合は,LICモジュール入り口点名の129文字目以降が切り捨てられます。
*MODOFFSET
LICログ比較データは,LICログ項目を要求したLICモジュール・テキストのバイト・オフセットと比較されます。
*MODTSP
LICログ比較データは,LICモジュールがコンパイルされた時点のタイム・スタンプと比較されます。このフィールドの形式は,システムのタイム・スタンプ形式です。

PAL項目の監視 (WCHPAL)

監視対象の最大5個のプロダクト活動ログ(PAL)項目を指定します。監視対象のPALが発生すると,監視出口プログラムが呼び出されます。

単一値

*NONE
PAL項目は監視されません。

その他の値(最大5個指定可能)

要素1: システム参照コード

*ALL
システム参照コードはすべて一致とみなされます。
文字値
監視対象のシステム参照コード(SRC)を指定してください。8桁のコードの各文字に16進数または疑問符のいずれかを指定することができます。疑問符はワイルドカード文字であり,その桁の任意の数字と一致することになります。最大7個のワイルドカード文字を指定することができます。総称SRCを指定することもできます。総称SRCは,1つまたは複数の文字の後にアスタリスク(*)を付けた文字ストリング(例えば,ABC*など)です。アスタリスクは任意の有効な文字で置き換えられます。総称SRCは,総称接頭部で始まるシステム参照コードをもつすべてのPAL項目を指定します。

要素2: 比較データ

指定されたシステム参照コードと一致するPAL項目が発生する場合に使用される比較データを指定します。要素3に指定されたフィールドが指定されたテキストと一致すると,監視対象条件が真になります。要素3に指定されたフィールドが指定されたテキストと一致しない場合,監視機能はそのまま続行されます。

*NONE
比較データは指定されません。指定されたシステム参照コードと一致するPAL項目があると,監視対象条件が真になります。
文字値
監視対象PAL項目の要素3に指定されたフィールドと比較するために使用されるテキスト・ストリングを指定してください。このテキストは大文字小文字の区別が行われます。

テキスト・ストリングには,疑問符(?)およびアスタリスク(*)のワイルドカード文字を指定することができます。疑問符は,単一文字を表すワイルドカードであり,同じ位置の任意の文字に一致します。例えば,「??123」の場合,長さが5桁で,「123」で終わるすべての値と一致します。比較データ値には,複数の疑問符ワイルドカード文字を指定できます。

アスタリスクは複数文字を表わすワイルドカード文字です。比較データ値の終わりに1つのアスタリスクのワイルドカード文字を指定できます。例えば,「ABC*」の場合,文字「ABC」で始まるすべての値と一致します。

要素3: 比較対象

要素2に指定された比較データと比較されるPAL項目の部分を指定します。

*RSCNAME
比較データは,ログ中に項目をもつ物理装置の名前と比較されます。資源名は最初の時点でシステムによって割り当てられますが,ユーザーが新しい値に変更している場合もあります。
*RSCTYPE
比較データは,製品を識別するために使用される番号または語と比較されます。
*RSCMODEL
比較データは,特定タイプのプロダクトの機能レベルを識別するために使用される番号または文字と比較されます。

実行優先順位 (RUNPTY)

監視セッションの作業が実行されるジョブの優先順位を指定します。

25
25というジョブ優先順位が使用されます。
1から99
ジョブの実行優先順位を指定してください。ジョブの実行優先順位の詳細については,IBM i Information Center(http://www.ibm.com/systems/i/infocenter/)の「実行管理機能」トピック・コレクションを参照してください。

1:メッセージ重大度を指定して,ジョブの総称メッセージIDの監視を開始する

STRWCH   SSNID(OWN_JOB) WCHPGM(MYLIB/MYPGM)
         WCHMSG((CPF00* *NONE *MSGDTA *ALL *GE 50)) WCHMSGQ((*JOBLOG))

このコマンドは,「OWN_JOB」という名前の監視セッションを開始して,STRWCHコマンドを呼び出したジョブで,重大度50以上のCPF00で始まるメッセージを監視します。CPF00*のメッセージが現行のジョブ・ログに送信されると,MYLIBライブラリー内のMYPGMプログラムが呼び出されて事象が通知されます。

2:実行優先順位を指定してメッセージの監視を開始する

STRWCH   SSNID(*GEN) WCHPGM(MYLIB/EXTPGM)
         WCHMSG((CPF1804))
         WCHMSGQ((*SYSOPR) (*JOBLOG))
         WCHJOB((*ALL/MYUSER/MYJOBNAME))
         RUNPTY(10)

このコマンドは,CPF1804メッセージがシステム・オペレーター・メッセージ待ち行列上または*ALL/MYUSER/MYJOBNAMEジョブ・ログ内で見つかった時にMYLIB/EXTPGMユーザー出口プログラムを呼び出す監視セッションを開始します。固有のセッションIDが生成されます。このセッションIDは,監視セッションが正常に開始された後に送信されるCPC3901完了メッセージのメッセージ・データで戻されます。ユーザー出口プログラムが呼び出されるジョブは,実行優先順位10で実行されます。

3:比較データを指定して即時メッセージの監視を開始する

STRWCH   SSNID(FRMPGM) WCHPGM(MYLIB/EXTPGM)
         WCHMSG((*IMMED QSCSWCH *FROMPGM))
         WCHMSGQ((*HSTLOG))

このコマンドは,QSCSWCHプログラムによって即時メッセージがライブラリーQSYS内のメッセージ待ち行列QHSTに送信された時に,MYLIB/EXTPGMユーザー出口プログラムを呼び出す監視セッションを開始します。

4:ジョブ・ログ内のいくつかのメッセージ・タイプの監視を開始する

STRWCH   SSNID(ERRMSG) WCHPGM(MYLIB/EXTPGM)
         WCHMSG((*ALL *NONE *MSGDTA *DIAG *GT 50)
                (*ALL *NONE *MSGDTA *STATUS *GT 50)
                (*ALL *NONE *MSGDTA *ESCAPE *GT 50))
         WCHMSGQ((*JOBLOG))
         WCHJOB((*ALL/MYUSER/*ALL))

このコマンドは,重大度コードが50以上の診断メッセージ,状況メッセージ,エスケープ・メッセージがMYUSERユーザー・プロファイルの下で実行されているジョブ・ログに送信されたときに,MYLIB/EXTPGMユーザー出口プログラムを呼び出す監視セッションを開始します。

5:LICログ項目の監視を開始する

STRWCH   SSNID(LICLOGSSN) WCHPGM(*LIBL/EXTPGM)
         WCHLICLOG(('99??' 9932 MYJOBNAME))

このコマンドは,99で始まっているメジャー・コードおよびマイナー・コード9932をもつライセンス内部コード(LIC)ログ項目がシステム上に生成されるかどうかを監視するLICLOGSSNを開始します。また,LICログ情報にはテキスト「MYJOBNAME」が入っている必要があります。ライブラリー・リストで見つかったEXTPGMプログラムの最初に一致するものが,事象が起こったことの通知先として呼び出されます。

6:開始時刻および終了時刻でPAL項目および呼び出し出口プログラムの監視を開始する

STRWCH   SSNID(PALSSN)
         WCHPGM(USRLIB/USRPGM)
         CALLWCHPGM(*STRWCH *ENDWCH)
         WCHPAL((B600512? MYRSC *RSCNAME))

このコマンドは,PALSSNを開始して,システムで生成されたシステム参照コードがB600512で開始するプロダクト活動ログ(PAL)項目を監視します。また,PAL資源名には,テキスト「MYRSC」が含まれます。プログラムUSRLIB/USRPGMが呼び出されて,イベントが発生したことが通知されますが,このプログラムはイベントの監視開始前および監視セッションの終了時にも呼び出されます。

エラー・メッセージ

*ESCAPE メッセージ

CPF0006
コマンドでエラーが起こった。
CPF2401
ライブラリー&1は認可されていない。
CPF2403
&2にメッセージ待ち行列&1が見つからない。
CPF2408
メッセージ待ち行列&1は認可されていない。
CPF39E3
セッションID &1は既に存在しています。
CPF39E4
メッセージ,LICログ項目,またはPAL項目監視を指定してください。
CPF39E5
活動状態のジョブが検出されない。監視セッションは開始されません。
CPF39E6
ユーザーに必要権限がありません。
CPF39E7
セッションIDが正しくありません。
CPF39E8
監視操作に対して十分な権限がありません。
CPF39E9
*JOBCTLの特殊権限が必要です。
CPF3958
ライブラリー&2のプログラム&1の使用は認可されていない。
CPF39D0
イベント監視機能を開始できません。理由コードは&1です。
CPF39D1
イベントを監視するジョブ数が制限を超えています。
CPF3C20
プログラム&1でエラーが見つかった。
CPF9811
ライブラリー&2でプログラム&1が見つからない。