Hitachi

OpenTP1 Version 7 OpenTP1 メッセージキューイング機能 TP1/Message Queue 使用の手引


set形式のMQAサービス定義

set形式のMQAサービス定義について説明します。

〈このページの構成〉

形式

〔set watch_time = 最大応答待ち時間〕
〔set mqa_channel_inf_file_name_a = MQTサーバ用チャネル
                                       管理情報格納A系ファイルパス名〕
〔set mqa_channel_inf_file_name_b = MQTサーバ用チャネル
                                       管理情報格納B系ファイルパス名〕
〔set mqa_channel_inf_file = normal|tp1file〕
〔set mqa_max_quenum = オンライン中に使用するキューの最大数〕
〔set mqa_max_grpnum = オンライン中に使用する
                           キューファイルグループの最大数〕
〔set mqa_max_msg_recnum = 1メッセージの最大レコード数〕
〔set mqa_max_filnum = オンライン中に使用するキューファイルの最大数〕
〔set mqa_ioproc_num = 入出力プロセス起動数〕
〔set mqa_expiry = Y|N〕
〔set mqa_maxque_expiry = メッセージ保持時間対象サーチキュー数〕
〔set mqa_maxmsg_expiry = メッセージ保持時間対象削除メッセージ数〕
〔set mqa_quefil_inf = Y|N〕
〔set mqa_mqr_conf = Y|N〕
〔set mqa_local_ccsid = キューマネジャの文字セット識別子〕
〔set mqa_jnl_conf = Y|N〕
〔set mqa_mqc_conf = Y|N〕
〔set mqa_mqc_clientnum = オンライン中に同時に処理できる
                                 クライアントの最大数〕
〔set mqa_mqc_trnnum = オンライン中に同時に実行できる
                                 トランザクションの最大数〕
〔set mqa_mqo_conf = Y|N〕
〔set mqa_mqo_queuefile_alarm_level = キューファイル登録メッセージ
                                                     サイズしきい値〕
〔set mqa_mqo_queuefile_recover_level = キューファイル登録メッセージ
                                                     サイズ回復値〕
〔set mqa_mqo_queue_alarm_level = キュー登録メッセージ数しきい値〕
〔set mqa_mqo_queue_recover_level = キュー登録メッセージ数回復値〕
〔set mqa_msg_stay_time = メッセージ滞留時間〕
〔set max_socket_descriptors = ソケット用ファイル記述子の最大数〕
〔set mqa_pool_attri = free|fixed〕
〔set mqa_extend_rmshm_size = MQAサービス専用共用メモリの拡張領域サイズ〕
〔set mqa_getwait_timeout = low|high〕
〔set mqa_filerr_continue = Y|N〕
〔set mqa_prf_trace_level = 性能検証用トレース情報取得レベル〕

オペランド

● watch_time=最大応答待ち時間

 〜<符号なし整数>((0〜65535))(単位:秒)

RPCによってプロセス間で通信する場合に,サービス要求を送ってからサービスの応答が返るまでの待ち時間の最大値を指定します。

指定時間を過ぎても応答がない場合は,RPCは送信タイムアウトと判断してエラーにします。

0を指定した場合は,応答を受信するまで無限に待ち続けます。

省略した場合は,OpenTP1のシステム共通定義のwatch_timeオペランドの値が設定されます。

● mqa_channel_inf_file_name_a=MQTサーバ用チャネル管理情報格納A系ファイルパス名

 〜<1〜80バイトの文字列>または〜<1〜63バイトの文字列>

ユーザ情報を格納するA系ファイルパス名を指定します。

MQTサーバのチャネルについての情報を格納するファイルです。このファイルは,MQTサーバサービス開始時とMQTサーバサービス終了時に作成,更新される情報で,次回のオンラインに引き継ぎます。

MQTサーバ用チャネル管理情報格納ファイルを通常ファイルに作成する場合は,ファイルパス名は80バイト以内にしてください。OpenTP1ファイルシステム上のファイルに作成する場合は,ファイルパス名は63バイト以内,ファイル名はOpenTP1ファイル名にしてください。

ファイルパス名およびファイル名にスペースを指定しないでください。また,すべてのファイルパス名の"/"個所に"/"を追加したファイルのパス名を指定しないでください。指定した場合,動作は保証されません。

注意事項

MQTサーバ用チャネル管理情報格納ファイルを使用しない場合はチャネルの運用に注意が必要です。

チャネルを引き継がない場合の属性値および注意点について,「5.3 開始時のチャネル情報引き継ぎ」を参照してください。

● mqa_channel_inf_file_name_b=MQTサーバ用チャネル管理情報格納B系ファイルパス名

 〜<1〜80バイトの文字列>または〜<1〜63バイトの文字列>

ユーザ情報を格納するB系ファイルパス名を指定します。

MQTサーバのチャネルについての情報を格納するファイルです。このファイルは,MQTサーバサービス開始時とMQTサーバサービス終了時に作成,更新される情報で,次回のオンラインに引き継ぎます。

MQTサーバ用チャネル管理情報格納ファイルを通常ファイルに作成する場合は,ファイルパス名は80バイト以内にしてください。OpenTP1ファイルシステム上のファイルに作成する場合は,ファイルパス名は63バイト以内,ファイル名はOpenTP1ファイル名にしてください。

ファイルパス名およびファイル名にスペースを指定しないでください。また,すべてのファイルパス名の"/"個所に"/"を追加したファイルのパス名を指定しないでください。指定した場合,動作は保証されません。

注意事項

MQTサーバ用チャネル管理情報格納ファイルを使用しない場合はチャネルの運用に注意が必要です。

チャネルを引き継がない場合の属性値および注意点について,「5.3 開始時のチャネル情報引き継ぎ」を参照してください。

● mqa_channel_inf_file=normal|tp1file

 〜《normal》

A系およびB系のMQTサーバ用チャネル管理情報格納ファイルの入出力形式を指定します。mqa_channel_inf_file_name_aオペランドまたはmqa_channel_inf_file_name_bオペランドが指定されている場合だけ有効です。

  • normal

    指定されたMQTサーバ用チャネル管理情報格納ファイルを通常ファイルとして処理します。

  • tp1file

    指定されたMQTサーバ用チャネル管理情報格納ファイルをOpenTP1ファイルシステム上のファイルとして処理します。

MQTサーバ開始前に,A系およびB系のMQTサーバ用チャネル管理情報格納ファイルを格納するためのOpenTP1ファイルシステムを初期設定してください。オンライン中に作成した場合は,チャネル引き継ぎ情報を維持できなくなることがありますので注意してください。

normalを指定して作成したMQTサーバ用チャネル管理情報格納ファイルとtp1fileを指定して作成したMQTサーバ用チャネル管理情報格納ファイルの互換性はありません。

tp1fileを指定して作成したMQTサーバ用チャネル管理情報格納ファイルがあるOpenTP1ファイルシステムの属性(セクタ長,容量,および最大ファイル数)を変更し,かつチャネル引き継ぎ情報を維持したい場合には次に示す手順を実行してください。

  1. OpenTP1ファイルシステムのバックアップファイルを作成します。

  2. バックアップ元のOpenTP1ファイルシステムを初期設定します。

  3. 2.で初期設定したファイルに,1.のバックアップファイルの内容をリストアします。

● mqa_max_quenum=オンライン中に使用するキューの最大数

 〜<符号なし整数>((2〜20480))《4096》

オンライン中に使用するキューの最大数を指定します。

オンライン中に使用するキューには,定義済みキューおよび永続的動的キュー(キューファイルに登録するキュー),一時的動的キュー(メモリキュー),リモートキューのローカル定義で指定したキュー,および別名キューが含まれます。

このオペランドには,次に示す数の合計以上の値を指定してください。

  • 各キューファイルの作成で指定したmqainitコマンドの-qオプションの値の合計

  • mqaqueatl定義コマンド(モデルキューの属性定義)の数

  • mqaremque定義コマンド(リモートキューのローカル定義)の数

  • mqaalsque定義コマンド(別名キューの属性定義)の数

  • オンライン中に動的に作成するキュー(動的キュー)の数

クラスタ機能を使用する場合,システムで四つのキューを作成することを考慮した値を指定してください。

● mqa_max_grpnum=オンライン中に使用するキューファイルグループの最大数

 〜<符号なし整数>((1〜4095))《16》

オンライン中に使用するキューファイルグループの最大数を指定します。

mqaquegrp定義コマンドで指定するキューファイルグループの合計以上の値を指定してください。

● mqa_max_msg_recnum=1メッセージの最大レコード数

 〜<符号なし整数>((1〜65535))《32》

1メッセージを登録する場合の最大レコード数を指定します。

最大レコード数は,次に示す計算式の最大値を指定してください。

[図データ]

キューファイルのレコード長は,mqainitコマンドの-sオプション(メッセージ長)と,キューファイルのセクタ長で算出した値です。レコード長の計算については,6章の「mqainit(キューファイルの割り当て)」を参照してください。

TP1/Message Queueは,開始時にこの値からジャーナルに取得するレコードデータの最大長を計算し,OpenTP1のシステムジャーナルサービス定義(jnl_max_datasizeオペランド)で指定された値以下かどうかをチェックします。エラーになった場合,OpenTP1のシステムジャーナルサービス定義(jnl_max_datasizeオペランド)の最大レコードデータ長の指定値を見直してください。

● mqa_max_filnum=オンライン中に使用するキューファイルの最大数

 〜<符号なし整数>((1〜4095))《16》

オンライン中に使用するキューファイルの最大数を指定します。

mqaquegrp定義コマンドで指定するキューファイルグループおよびmqaaddコマンドで追加するキューファイル(バックアップキューファイルを含む)の合計以上の値を指定してください。

● mqa_ioproc_num=入出力プロセス起動数

 〜<符号なし整数>((1〜64))《1》

MQPUT命令およびMQPUT1命令で登録したメッセージやMQGET命令で削除したメッセージの属性情報をキューファイルに出力する,入出力プロセスの最大起動数を指定します。

mqaquegrp定義コマンドに指定したキューファイルの数が,このオペランドの指定値よりも小さい場合は,キューファイルの数分の入出力プロセスが起動されます。ただし,二重化構成のキューファイルの場合,バックアップキューファイル(B系ファイル)の数は含まれません。

● mqa_expiry=Y|N

 〜《N》

メッセージ保持時間機能を使用するかどうかを指定します。

  • Y

    メッセージ保持時間機能を使用します。監視サーバプロセスが起動します。

    なお,監視サーバプロセスは,メッセージ保持時間終了の対象となったメッセージの削除だけを行います。メッセージの削除前に,メッセージ保持時間の終了は確認しません。

    メッセージ保持時間は,MQMD構造体のExpiryフィールドに指定します。メッセージ保持時間の対象となる契機については,マニュアル「TP1/Message Queue プログラム作成リファレンス」のMQMD構造体のExpiryフィールドについての記載を参照してください。

  • N

    メッセージ保持時間機能を使用しません。

● mqa_maxque_expiry=メッセージ保持時間対象サーチキュー数

 〜<符号なし整数>((1〜20480))《3》

メッセージ保持時間が終了したメッセージが存在するキューから,1回の監視でメッセージ削除の対象とするキュー数を指定します。

TP1/Message Queueは一定間隔(10秒)でキューを監視して,メッセージ保持時間が終了したメッセージをキューから削除します。

例えば,mqa_maxque_expiryオペランドに10,mqa_maxmsg_expiryオペランドに5が指定されている環境で,メッセージ保持時間が終了したメッセージが存在するキューが100個ある場合,1回の監視で10個のキューが対象となり,1キュー当たり最大で5個のメッセージが削除されます。

● mqa_maxmsg_expiry=メッセージ保持時間対象削除メッセージ数

 〜<符号なし整数>((1〜65535))《3》

mqa_maxque_expiryオペランドで対象となったキューから,メッセージ保持時間が終了したメッセージを削除するメッセージ数を指定します。

メッセージ保持時間が終了したメッセージ数が,mqa_maxmsg_expiryオペランドで指定したメッセージ数を超えた場合は,超えた分のメッセージは,次回の対象になるまで削除されません。

● mqa_quefil_inf=Y|N

 〜《N》

キュー/キューファイルのしきい値,および回復値に達した場合,メッセージを出力するかどうかを指定します。

  • Y

    メッセージを出力します。

  • N

    メッセージを出力しません。

● mqa_mqr_conf=Y|N

 〜《N》

このノードでクラスタ機能を使用するかどうかを指定します。

  • Y

    このノードでクラスタ機能を使用します。

  • N

    このノードでクラスタ機能を使用しません。

● mqa_local_ccsid=キューマネジャの文字セット識別子

 〜<符号なし整数>((1〜65535))《850》

キューマネジャの文字セット識別子(CodedCharSetId属性)を指定します。

指定する文字セット識別子が表す文字セットには,SBCS(1バイト文字セット)の場合もDBCS(2バイト文字セット)の場合も,必ずASCII文字列が含まれている必要があります。

省略値(850)を変更してチャネルを接続する場合,相手キューマネジャと同じ文字セット識別子,または相手キューマネジャが変換可能な文字セット識別子を指定してください。

指定した値は次に示す個所で使用されます。

  • アプリケーションがMQMD構造体のCodedCharSetIdフィールドにMQCCSI_Q_MGRを指定した場合のMQMD構造体のCodedCharSetIdフィールド

  • 相手キューマネジャとのチャネル接続

相手キューマネジャとのチャネル接続に使用される文字セットは,MQMD構造体のCodedCharSetIdフィールドで指定する文字セット識別子と関係ありません。アプリケーションがMQMD構造体のCodedCharSetIdフィールドにMQCCSI_Q_MGR以外の値を指定してアプリケーションデータを作成してもチャネル接続には影響しません。

● mqa_jnl_conf=Y|N

 〜《N》

メッセージ登録時にメッセージデータの内容をジャーナルに取得するかどうかを指定します。

  • Y

    メッセージデータの内容をジャーナルに取得します。

    メッセージデータの内容をジャーナルに取得することによって,キューファイルがキューファイル格納媒体損傷の要因で障害となった場合に,mqafrcコマンドでキューファイルの回復ができます。

  • N

    メッセージデータの内容をジャーナルに取得しません。

メッセージデータの内容をジャーナルに取得する場合は,次に示す制限事項に従ってシステムを構築してください。

  • キューファイルの二重化構成はできません。

  • mqaquemgr定義コマンドの-lオプションに指定する最大メッセージ長は次に示す計算式以下の値を設定してください。

    32ビット版の場合
      jnl_max_datasizeオペランドの指定値 − 704
      − 4×(mqa_max_msg_recnumオペランドの指定値−1)
     
    64ビット版の場合
      jnl_max_datasizeオペランドの指定値 − 720
      − 4×(mqa_max_msg_recnumオペランドの指定値−1)

    jnl_max_datasizeオペランドはシステムジャーナルサービス定義のオペランドです。詳細については,マニュアル「OpenTP1 システム定義」を参照してください。

  • mqtalccha定義コマンドのバッファ方式にはメッセージ方式を指定してください。セグメント方式を指定した場合はMQTが異常を検出し,TP1/Message Queueは正常開始できません。

● mqa_mqc_conf=Y|N

 〜《N》

このノードでMQCサーバ機能を使用するかどうかを指定します。MQCサーバ機能を使用する場合,必ずYを指定してください。

  • Y

    このノードでMQCサーバ機能を使用します。

  • N

    このノードでMQCサーバ機能を使用しません。

関連製品であるTP1/Message Queue Accessを使用する場合に指定するオペランドです。

● mqa_mqc_clientnum = オンライン中に同時に処理できるクライアントの最大数

 〜<符号なし整数>((1〜256))《16》

オンライン中に同時に処理できるクライアントの最大数を指定します。

mqcgwpnam定義コマンドの合計以上の値を指定してください。

指定値がmqcgwpnam定義コマンドの合計よりも小さい場合,MQCサービス開始時にKFCA30823-Eメッセージを出力して異常終了します。

関連製品であるTP1/Message Queue Accessを使用する場合に指定するオペランドです。

● mqa_mqc_trnnum = オンライン中に同時に実行できるトランザクションの最大数

 〜<符号なし整数>((0〜256))《0》

クライアントがXA接続した場合,オンライン中に同時に実行できるトランザクションの最大数を指定します。

指定値以上のトランザクションを開始しようとした場合,KFCA30855-Eメッセージを出力してトランザクションの開始を中断します。

この値を変更するときは,ジャーナルファイル容量の見積もりを見直してください。

関連製品であるTP1/Message Queue Accessを使用する場合に指定するオペランドです。

● mqa_mqo_conf=Y|N

 〜《N》

TP1/Message Queueでは,Message Queue - Operation - Agent機能をサポートしていません。mqa_mqo_conf定義は過去のバージョンで作成された定義との互換性のためだけにあります。そのため,mqa_mqo_conf定義にYを指定した場合,MQ管理機能インタフェースでエラー(KFCA31049-E)となりますが,この機能を縮退しOpenTP1の起動には成功します。

  • Y

    Message Queue - Operation - Agentを使用します。

  • N

    Message Queue - Operation - Agentを使用しません。

● mqa_mqo_queuefile_alarm_level=キューファイル登録メッセージサイズしきい値

 〜<符号なし整数>((10〜100))《80》(単位:%)

各キューファイルのメッセージ格納域全容量に対する,メッセージ格納域登録率のしきい値を指定します。

キューファイルの登録率がこのオペランドで指定したしきい値以上になった場合,mqa_quefil_infオペランドにYが指定されていれば,KFCA31055-Iメッセージが出力されます。

● mqa_mqo_queuefile_recover_level=キューファイル登録メッセージサイズ回復値

 〜<符号なし整数>((10〜100))《70》(単位:%)

各キューファイルのメッセージ格納域全容量に対する,メッセージ格納域登録率の回復値を指定します。

キューファイルの登録率がこのオペランドで指定した回復値を下回った場合,mqa_quefil_infオペランドにYが指定されていれば,KFCA31056-Iメッセージが出力されます。

● mqa_mqo_queue_alarm_level=キュー登録メッセージ数しきい値

 〜<符号なし整数>((10〜100))《80》(単位:%)

各キューに登録できる最大メッセージ数に対する,メッセージ登録率のしきい値を指定します。

キューのメッセージ登録率がこのオペランドで指定したしきい値以上になった場合,mqa_quefil_infオペランドにYが指定されていれば,KFCA31053-Iメッセージが出力されます。

● mqa_mqo_queue_recover_level=キュー登録メッセージ数回復値

 〜<符号なし整数>((10〜100))《70》(単位:%)

各キューに登録できる最大メッセージ数に対する,メッセージ登録率の回復値を指定します。

キューのメッセージ登録率がこのオペランドで指定した回復値を下回った場合,mqa_quefil_infオペランドにYが指定されていれば,KFCA31054-Iメッセージが出力されます。

● mqa_msg_stay_time=メッセージ滞留時間

 〜<符号なし整数>((0〜2147483647))《0》(単位:秒)

メッセージが滞留したと判断する時間を指定します。この指定した時間以上メッセージがキューにある場合に,キューに対応するKFCA31065-Iメッセージが出力されます。メッセージ登録時から,メッセージの削除が有効になるまでが監視対象になります。0を指定した場合,滞留状態はチェックされません。このオペランドに0以外を指定した場合に,監視サーバプロセスが起動します。滞留状態の検知は遅れる場合があります。KFCA31065-Iメッセージが出力されたあとに,メッセージ滞留時間を経過したメッセージがキューからすべて取り出されると,KFCA31066-Iメッセージが出力されます。

このオペランドを指定する場合は,監視対象にするキューについて,mqaqueatl定義コマンドの-vオプションにonを指定してください。

● max_socket_descriptors=ソケット用ファイル記述子の最大数

 〜<符号なし整数>((Linux以外の場合:32〜2032,Linuxの場合:32〜1008))《514》

OpenTP1の制御下のプロセスで,ソケット用に使用するファイル記述子の最大数を指定します。次に示す計算式で求めた値を指定してください。

↑(mqa_ioproc_numの指定値×2+7)/0.8↑

(凡例)

↑↑:小数点以下を切り上げます。

● mqa_pool_attri=free|fixed

 〜《free》

MQAサービス専用共用メモリをメモリプールに固定するかどうかを指定します。

このオペランドでfixedを指定する場合は,MQAサービス専用共用メモリがメモリプールに固定されるため,実装するメモリの容量や,全使用容量に対する共用メモリの割合などを考慮してください。

  • free

    MQAサービス専用共用メモリをメモリプールに固定しません。

    この値を指定した場合は,共用メモリのページングが発生して処理速度が低下することがあります。

  • fixed

    MQAサービス専用共用メモリをメモリプールに固定します。

    共用メモリのページングによって処理速度が低下することはありません。

    ただし,実装するメモリの容量が少ない場合,共用メモリ以外のテキストやデータセグメントなどのページングが発生することがあります。

● mqa_extend_rmshm_size=MQAサービス専用共用メモリの拡張領域サイズ

 〜<符号なし整数>((0〜2000000000))《0》(単位:バイト)

オンライン中に組み込むキューファイルで使用する共用メモリのサイズを指定します。TP1/Message Queueの開始時に指定したサイズでMQAサービス専用共用メモリの拡張領域を確保します。省略した場合,TP1/Message Queueの開始時にMQAサービス専用共用メモリの拡張領域は確保されないため,オンライン中に新しくキューファイルを組み込めません。

MQAサービス定義のmqaquegrp定義コマンドで指定したキューファイル以外の新規キューファイルをオンライン中に組み込むと,組み込むキューファイルで使用するサイズ分のMQAサービス専用共用メモリの拡張領域を使用します。一度,新規キューファイルを組み込むと,mqarmコマンドでキューファイルを切り離してもMQAサービス専用共用メモリの拡張領域は予約された状態のままとなります。したがって,同一のキューファイルを組み込む場合だけMQAサービス専用共用メモリの拡張領域の予約された部分を使用できます。

● mqa_getwait_timeout=low|high

 〜《low》

MQGMO_WAITを指定したMQGET命令でメッセージが到着しなかった場合に,タイムアウトする時間の精度を指定します。

  • low

    MQGMO構造体のWaitIntervalフィールドに指定した待ち合わせ最大時間を,秒単位の精度で待ち合わせを行います。

    タイムアウトするまでに最大で1秒の遅延が発生することがあります。

  • high

    MQGMO構造体のWaitIntervalフィールドに指定した待ち合わせ最大時間を,ミリ秒単位の精度で待ち合わせを行います。

    タイムアウトするまでに最大で1秒の遅延が発生することがあります。

    なお,メッセージがキューに登録されてからMQGET命令の待ち合わせが解除されるまでに,数10ミリ秒の遅延が発生することがあります。

メッセージが到着してからMQGET命令の待ち合わせが解除されるまでの遅延を小さくしたい場合は,lowを指定してください。メッセージが到着しなかったときに,MQGET命令がタイムアウトする時間をミリ秒単位で制御したい場合は,highを指定してください。

● mqa_filerr_continue=Y|N

 〜《Y》

キューファイルに入出力エラーが発生した場合,オンラインを継続させるかどうかを指定します。

このオペランドを省略した場合またはYを指定した場合,キューファイルに入出力エラーが発生すると,キューファイルの状態を一時的障害閉塞としてオンラインを継続させます。

このオペランドにNを指定する場合,キューファイル入出力エラー発生時にKFCA31191-Eメッセージを出力してオンラインを異常終了させることができます。異常終了時は再開始前に障害要因を取り除くことによって,再開始時にキューファイルがジャーナルによって回復されます。そのため,障害閉塞しないでキューファイルの整合性が保たれます。

  • Y

    オンラインを継続させます。

  • N

    オンラインを継続させず,OpenTP1を異常終了させます。

このオペランドにNを指定する場合,次に示す点に注意してください。

  • キューファイル二重化構成の場合,両系が障害となった時点でOpenTP1が異常終了します。

  • OpenTP1が異常終了したあと,このオペランドにNを指定したまま障害要因を取り除かないでOpenTP1を再開始した場合,再び入出力エラーでOpenTP1が異常終了するおそれがあります。

  • OpenTP1が異常終了したあと,このオペランドをYに変更してOpenTP1を再開始したときに再び入出力エラーが発生すると,キューファイルは障害閉塞になります。

● mqa_prf_trace_level=性能検証用トレース情報取得レベル

 〜<16進数字>((00000000|00000001|00000010))《00000000》

性能検証用トレース情報を取得するレベルを指定します。取得する場合はシステム共通定義のprf_traceオペランドにYを指定してください。Nを指定した場合,mqa_prf_trace_levelオペランドに00000001または00000010を指定しても性能検証用トレース情報は取得されません。

  • 00000000

    性能検証用トレース情報は取得されません。

  • 00000001

    イベントIDが0xd000〜0xd003の性能検証用トレース情報が取得されます。

  • 00000010

    イベントIDが0xd100〜0xd103の性能検証用トレース情報が取得されます。

性能検証用トレース情報の詳細を見るためのトレース情報ファイルの取得(prfgetコマンド)およびトレース情報ファイルの編集出力(prfedコマンド)など,性能検証用トレースに関する運用については,マニュアル「OpenTP1 運用と操作」を参照してください。OpenTP1の開始モードに関係なく,OpenTP1開始時にMQAサービス定義に指定されている値が有効となります。

イベントID別の取得内容を次に示します。

表4‒7 イベントID別の取得内容

イベントID

キュー名称(48)

メッセージトークン(内部登録時間)(8)

リターンコード(4)

メッセージ識別子(32)

相関識別子(32)

ユーザデータ(32)

メッセージ滞留時間(16)

処理時間

(16)

0xd000

0xd001

0xd002

0xd003

0xd100

0xd101

0xd102

0xd103

(凡例)

○:情報を取得します。

−:情報を取得しません。

括弧内:取得バイト数

注※

prfedコマンドに-dオプションを指定した場合に出力される,詳細情報と出力順序を示しています。

TP1/Massge Queueの詳細情報の出力情報,および表示形式を次に示します。

表4‒8 イベントID別の詳細情報出力情報

イベントID

先頭からのオフセット

0000 〜 001f

0020 〜 003f

0040 〜 004f

0050 〜 005f

0xd000

相関識別子

ユーザデータ

0xd001

メッセージ滞留時間

0xd002

0xd003

メッセージ滞留時間

0xd100

処理時間

0xd101

メッセージ滞留時間

処理時間

0xd102

処理時間

0xd103

メッセージ滞留時間

処理時間

出力形式
  • 相関識別子

    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

  • ユーザデータ

    bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

  • メッセージ滞留時間

    cccccccccccccccc

  • 処理時間

    dddddddddddddddd

aa..aa

相関識別子(16進数)

次の形式で出力されます。

相関識別子(24バイト)+“\0\0\0\0\0\0\0\0”(予約領域)

bb..bb

ユーザデータ(16進数)

ユーザデータの先頭32バイトが出力されます。

cc..cc

メッセージ滞留時間(16進数)

次の形式で出力されます。

メッセージ滞留時間(8バイト)+“\0\0\0\0\0\0\0\0”(予約領域)

dd..dd

処理時間(16進数)

次の形式で出力されます。

処理時間(秒)(4バイト)+処理時間(マイクロ秒)(4バイト)+“\0\0\0\0\0\0\0\0”(予約領域)

このオペランドの使用は,TP1/Extension 1をインストールしていることが前提です。TP1/Extension 1をインストールしていない場合の動作は保証できません。

注意事項

トレースを取得したOSがLinuxまたはWindowsの場合,メッセージ滞留時間,処理時間はリトルエンディアンのため,次の例のとおり1バイトずつ逆に解釈してください。

(例1)イベントIDが0xd001の場合

Linuxで取得し,「prfed -d -m」で編集したprfトレース情報の詳細を次に示します。

[図データ]

上記の場合,+0040〜+0043はメッセージ滞留時間のため,128149秒となります。

(例2)イベントIDが0xd101の場合

Linuxで取得し,「prfed -d -m」で編集したprfトレース情報の詳細を次に示します。

[図データ]

上記の場合,次のように合計350マイクロ秒になります。

・+0050〜+0053は処理時間(秒)のため0秒

・+0054〜+0057は処理時間(マイクロ秒)のため350マイクロ秒